aboutsummaryrefslogtreecommitdiff
path: root/src/backend/tcop/fastpath.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-03-29 03:01:32 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-03-29 03:01:32 +0000
commit8c85a34a3b945059e1bc03e2f0988b8092a365fd (patch)
treeb785abb23ba5b4a353a4aad3767cde784c19fbe9 /src/backend/tcop/fastpath.c
parent4f6f5db47484c6550cfe792e80fc2c824154995e (diff)
downloadpostgresql-8c85a34a3b945059e1bc03e2f0988b8092a365fd.tar.gz
postgresql-8c85a34a3b945059e1bc03e2f0988b8092a365fd.zip
Officially decouple FUNC_MAX_ARGS from INDEX_MAX_KEYS, and set the
former to 100 by default. Clean up some of the less necessary dependencies on FUNC_MAX_ARGS; however, the biggie (FunctionCallInfoData) remains.
Diffstat (limited to 'src/backend/tcop/fastpath.c')
-rw-r--r--src/backend/tcop/fastpath.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/backend/tcop/fastpath.c b/src/backend/tcop/fastpath.c
index f123e2f0cbf..42b73d49c0c 100644
--- a/src/backend/tcop/fastpath.c
+++ b/src/backend/tcop/fastpath.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/tcop/fastpath.c,v 1.78 2005/03/29 00:17:05 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/tcop/fastpath.c,v 1.79 2005/03/29 03:01:31 tgl Exp $
*
* NOTES
* This cruft is the server side of PQfn.
@@ -216,7 +216,7 @@ fetch_fp_info(Oid func_id, struct fp_info * fip)
* the struct fp_info across transactions anymore, but keep it
* anyway.]
*/
- MemSet((char *) fip, 0, sizeof(struct fp_info));
+ MemSet(fip, 0, sizeof(struct fp_info));
fip->funcid = InvalidOid;
fmgr_info(func_id, &fip->flinfo);
@@ -341,8 +341,7 @@ HandleFunctionRequest(StringInfo msgBuf)
/*
* Prepare function call info block and insert arguments.
*/
- MemSet(&fcinfo, 0, sizeof(fcinfo));
- fcinfo.flinfo = &fip->flinfo;
+ InitFunctionCallInfoData(fcinfo, &fip->flinfo, 0, NULL, NULL);
if (PG_PROTOCOL_MAJOR(FrontendProtocol) >= 3)
rformat = parse_fcall_arguments(msgBuf, fip, &fcinfo);
@@ -443,6 +442,7 @@ parse_fcall_arguments(StringInfo msgBuf, struct fp_info * fip,
fcinfo->argnull[i] = true;
continue;
}
+ fcinfo->argnull[i] = false;
if (argsize < 0)
ereport(ERROR,
(errcode(ERRCODE_PROTOCOL_VIOLATION),
@@ -566,6 +566,7 @@ parse_fcall_arguments_20(StringInfo msgBuf, struct fp_info * fip,
fcinfo->argnull[i] = true;
continue;
}
+ fcinfo->argnull[i] = false;
if (argsize < 0)
ereport(ERROR,
(errcode(ERRCODE_PROTOCOL_VIOLATION),