From 5f74d499bfc07c43f44d0989aab6b23c6b5bfbb0 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Thu, 17 Jun 1999 22:21:41 +0000 Subject: Defend against function calls with more than 8 arguments (code used to overrun its fixed-size arrays before detecting error; not cool). Also, replace uses of magic constant '8' with 'MAXFARGS'. --- src/backend/parser/parse_target.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/backend/parser/parse_target.c') diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c index 563a48e1b4e..09f624fc760 100644 --- a/src/backend/parser/parse_target.c +++ b/src/backend/parser/parse_target.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.41 1999/05/29 03:17:20 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/parser/parse_target.c,v 1.42 1999/06/17 22:21:41 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -712,7 +712,7 @@ SizeTargetExpr(ParseState *pstate, int i; HeapTuple ftup; char *funcname; - Oid oid_array[8]; + Oid oid_array[MAXFARGS]; FuncCall *func; A_Const *cons; @@ -720,7 +720,7 @@ SizeTargetExpr(ParseState *pstate, funcname = typeidTypeName(attrtype); oid_array[0] = attrtype; oid_array[1] = INT4OID; - for (i = 2; i < 8; i++) + for (i = 2; i < MAXFARGS; i++) oid_array[i] = InvalidOid; /* attempt to find with arguments exactly as specified... */ -- cgit v1.2.3