aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/nodes')
-rw-r--r--src/backend/nodes/copyfuncs.c6
-rw-r--r--src/backend/nodes/equalfuncs.c6
-rw-r--r--src/backend/nodes/freefuncs.c5
3 files changed, 14 insertions, 3 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c
index d353df58bdc..5f23a954b13 100644
--- a/src/backend/nodes/copyfuncs.c
+++ b/src/backend/nodes/copyfuncs.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.95 1999/11/15 02:00:01 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.96 1999/11/15 03:28:06 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -551,6 +551,10 @@ _copySubPlan(SubPlan *from)
newnode->parParam = listCopy(from->parParam);
Node_Copy(from, newnode, sublink);
+ /* do not copy execution state */
+ newnode->shutdown = false;
+ newnode->curTuple = NULL;
+
return newnode;
}
diff --git a/src/backend/nodes/equalfuncs.c b/src/backend/nodes/equalfuncs.c
index 2e3d67da608..fccb9d31608 100644
--- a/src/backend/nodes/equalfuncs.c
+++ b/src/backend/nodes/equalfuncs.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.50 1999/10/07 04:23:04 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.51 1999/11/15 03:28:06 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -406,9 +406,13 @@ _equalIndexScan(IndexScan *a, IndexScan *b)
static bool
_equalSubPlan(SubPlan *a, SubPlan *b)
{
+ /* should compare plans, but have to settle for comparing plan IDs */
if (a->plan_id != b->plan_id)
return false;
+ if (!equal(a->rtable, b->rtable))
+ return false;
+
if (!equal(a->sublink, b->sublink))
return false;
diff --git a/src/backend/nodes/freefuncs.c b/src/backend/nodes/freefuncs.c
index cad49be76bd..db09b6700bc 100644
--- a/src/backend/nodes/freefuncs.c
+++ b/src/backend/nodes/freefuncs.c
@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.26 1999/08/21 03:48:57 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.27 1999/11/15 03:28:07 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -441,6 +441,9 @@ _freeSubPlan(SubPlan *node)
freeList(node->parParam);
freeObject(node->sublink);
+ if (node->curTuple)
+ pfree(node->curTuple);
+
pfree(node);
}