aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tcop/pquery.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/tcop/pquery.c')
-rw-r--r--src/backend/tcop/pquery.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/backend/tcop/pquery.c b/src/backend/tcop/pquery.c
index 0e2494fa8a5..e8f557c1a1e 100644
--- a/src/backend/tcop/pquery.c
+++ b/src/backend/tcop/pquery.c
@@ -478,7 +478,8 @@ PortalStart(Portal portal, ParamListInfo params, Snapshot snapshot)
PG_TRY();
{
ActivePortal = portal;
- CurrentResourceOwner = portal->resowner;
+ if (portal->resowner)
+ CurrentResourceOwner = portal->resowner;
PortalContext = PortalGetHeapMemory(portal);
oldContext = MemoryContextSwitchTo(PortalGetHeapMemory(portal));
@@ -761,7 +762,8 @@ PortalRun(Portal portal, long count, bool isTopLevel,
PG_TRY();
{
ActivePortal = portal;
- CurrentResourceOwner = portal->resowner;
+ if (portal->resowner)
+ CurrentResourceOwner = portal->resowner;
PortalContext = PortalGetHeapMemory(portal);
MemoryContextSwitchTo(PortalContext);
@@ -1410,7 +1412,8 @@ PortalRunFetch(Portal portal,
PG_TRY();
{
ActivePortal = portal;
- CurrentResourceOwner = portal->resowner;
+ if (portal->resowner)
+ CurrentResourceOwner = portal->resowner;
PortalContext = PortalGetHeapMemory(portal);
oldContext = MemoryContextSwitchTo(PortalContext);