diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-29 03:01:32 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2005-03-29 03:01:32 +0000 |
commit | 8c85a34a3b945059e1bc03e2f0988b8092a365fd (patch) | |
tree | b785abb23ba5b4a353a4aad3767cde784c19fbe9 /src/backend/tcop/fastpath.c | |
parent | 4f6f5db47484c6550cfe792e80fc2c824154995e (diff) | |
download | postgresql-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.c | 9 |
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), |