]> granicus.if.org Git - postgresql/commitdiff
In json code, clean up temp memory contexts after processing.
authorAndrew Dunstan <andrew@dunslane.net>
Mon, 3 Feb 2014 15:39:13 +0000 (10:39 -0500)
committerAndrew Dunstan <andrew@dunslane.net>
Mon, 3 Feb 2014 15:39:13 +0000 (10:39 -0500)
Craig Ringer.

src/backend/utils/adt/jsonfuncs.c

index bcb9354364a95258f2f837d009b4abfbe41c0caa..cf66a28cf2c044b102d9cebf81b2f0f1c52f1b05 100644 (file)
@@ -958,6 +958,8 @@ each_worker(PG_FUNCTION_ARGS, bool as_text)
 
        pg_parse_json(lex, sem);
 
+       MemoryContextDelete(state->tmp_cxt); 
+
        rsi->setResult = state->tuple_store;
        rsi->setDesc = state->ret_tdesc;
 
@@ -1125,6 +1127,8 @@ json_array_elements(PG_FUNCTION_ARGS)
 
        pg_parse_json(lex, sem);
 
+       MemoryContextDelete(state->tmp_cxt); 
+
        rsi->setResult = state->tuple_store;
        rsi->setDesc = state->ret_tdesc;