diff options
Diffstat (limited to 'src/backend/executor/spi.c')
-rw-r--r-- | src/backend/executor/spi.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/executor/spi.c b/src/backend/executor/spi.c index a4a6e5bae43..35021e1839b 100644 --- a/src/backend/executor/spi.c +++ b/src/backend/executor/spi.c @@ -1197,9 +1197,6 @@ SPI_cursor_open_internal(const char *name, SPIPlanPtr plan, cplan = GetCachedPlan(plansource, paramLI, false, _SPI_current->queryEnv); stmt_list = cplan->stmt_list; - /* Pop the error context stack */ - error_context_stack = spierrcontext.previous; - if (!plan->saved) { /* @@ -1318,6 +1315,9 @@ SPI_cursor_open_internal(const char *name, SPIPlanPtr plan, Assert(portal->strategy != PORTAL_MULTI_QUERY); + /* Pop the error context stack */ + error_context_stack = spierrcontext.previous; + /* Pop the SPI stack */ _SPI_end_call(true); |