From bb1e8bea020fb3d83df308bfd263968fb0374ff7 Mon Sep 17 00:00:00 2001 From: Peter Eisentraut Date: Mon, 30 Nov 2009 15:49:35 +0000 Subject: [PATCH] In SRF example, move oldcontext variable definition into the FIRSTCALL branch, which is how most actual code is actually structured. Also fix slight whitespace misalignment. --- doc/src/sgml/xfunc.sgml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml index 7a5fa4a0d9..b0ef51c7df 100644 --- a/doc/src/sgml/xfunc.sgml +++ b/doc/src/sgml/xfunc.sgml @@ -1,4 +1,4 @@ - + User-Defined Functions @@ -3034,11 +3034,12 @@ my_set_returning_function(PG_FUNCTION_ARGS) { FuncCallContext *funcctx; Datum result; - MemoryContext oldcontext; further declarations as needed if (SRF_IS_FIRSTCALL()) { + MemoryContext oldcontext; + funcctx = SRF_FIRSTCALL_INIT(); oldcontext = MemoryContextSwitchTo(funcctx->multi_call_memory_ctx); /* One-time setup code appears here: */ @@ -3088,9 +3089,9 @@ retcomposite(PG_FUNCTION_ARGS) TupleDesc tupdesc; AttInMetadata *attinmeta; - /* stuff done only on the first call of the function */ - if (SRF_IS_FIRSTCALL()) - { + /* stuff done only on the first call of the function */ + if (SRF_IS_FIRSTCALL()) + { MemoryContext oldcontext; /* create a function context for cross-call persistence */ -- 2.40.0