From: Tom Lane Date: Tue, 4 May 1999 00:00:20 +0000 (+0000) Subject: Make sure targetlist generated for subplan does not share X-Git-Tag: REL6_5~319 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5da466c597f03b166d1cffd65b575958ff28c77e;p=thirdparty%2Fpostgresql.git Make sure targetlist generated for subplan does not share nodes with HAVING qualifier of upper plan. Have not seen any failures, just being a little bit paranoid... --- diff --git a/src/backend/optimizer/plan/planner.c b/src/backend/optimizer/plan/planner.c index aeaa07658cc..323d2c61b12 100644 --- a/src/backend/optimizer/plan/planner.c +++ b/src/backend/optimizer/plan/planner.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.48 1999/05/03 00:38:43 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/planner.c,v 1.49 1999/05/04 00:00:20 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -505,8 +505,13 @@ make_subplanTargetList(Query *parse, if (tlist_member(v, sub_tlist) == NULL) { + /* Make sure sub_tlist element is a fresh object not shared with + * any other structure; not sure if anything will break if it is + * shared, but better to be safe... + */ sub_tlist = lappend(sub_tlist, - create_tl_element(v, next_resno)); + create_tl_element((Var *) copyObject(v), + next_resno)); next_resno++; } }