Further fix thinko in plpgsql memory leak fix.

There's a second call of get_eval_mcontext() that should also be
get_stmt_mcontext().  This is actually dead code, since no
interesting allocations happen before switching back to the
original context, but we should keep it in sync with the other
call to forestall possible future bugs.

Discussion: https://postgr.es/m/f075f7be-c654-9aa8-3ffc-e9214622f02a@enterprisedb.com
This commit is contained in:
Tom Lane 2020-12-28 11:55:23 -05:00
parent 2e15f48d97
commit 7966b41ded
1 changed files with 1 additions and 1 deletions

View File

@ -2239,7 +2239,7 @@ exec_stmt_call(PLpgSQL_execstate *estate, PLpgSQL_stmt_call *stmt)
row->varnos = (int *) palloc(sizeof(int) * list_length(funcargs));
if (!local_plan)
MemoryContextSwitchTo(get_eval_mcontext(estate));
MemoryContextSwitchTo(get_stmt_mcontext(estate));
/*
* Examine procedure's argument list. Each output arg position