diff options
Diffstat (limited to 'src/backend/rewrite/rewriteManip.c')
| -rw-r--r-- | src/backend/rewrite/rewriteManip.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/backend/rewrite/rewriteManip.c b/src/backend/rewrite/rewriteManip.c index 663b67708e..45115b8d04 100644 --- a/src/backend/rewrite/rewriteManip.c +++ b/src/backend/rewrite/rewriteManip.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteManip.c,v 1.56 2001/03/22 03:59:44 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteManip.c,v 1.57 2001/04/18 20:42:55 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -765,8 +765,13 @@ ResolveNew_mutator(Node *node, ResolveNew_context *context) if (this_varno == context->target_varno && this_varlevelsup == context->sublevels_up) { - Node *n = FindMatchingNew(context->targetlist, - var->varattno); + Node *n; + + /* band-aid: don't do the wrong thing with a whole-tuple Var */ + if (var->varattno == InvalidAttrNumber) + elog(ERROR, "ResolveNew: can't handle whole-tuple reference"); + + n = FindMatchingNew(context->targetlist, var->varattno); if (n == NULL) { |
