From ef899c7f621f2f51a9ba4f6b04c1cc151a4da625 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed, 12 Jan 2000 05:25:09 +0000
Subject: [PATCH] RemoveFunction didn't defend against too many args.

---
 src/backend/commands/remove.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/backend/commands/remove.c b/src/backend/commands/remove.c
index 4a327fde284..e238aab384d 100644
--- a/src/backend/commands/remove.c
+++ b/src/backend/commands/remove.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *	  $Header: /cvsroot/pgsql/src/backend/commands/Attic/remove.c,v 1.43 2000/01/10 17:14:32 momjian Exp $
+ *	  $Header: /cvsroot/pgsql/src/backend/commands/Attic/remove.c,v 1.44 2000/01/12 05:25:09 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -320,7 +320,9 @@ RemoveFunction(char *functionName,		/* function name to be removed */
 	char	   *typename;
 	int			i;
 
-
+	if (nargs > FUNC_MAX_ARGS)
+		elog(ERROR, "functions cannot have more than %d arguments",
+			 FUNC_MAX_ARGS);
 	MemSet(argList, 0, FUNC_MAX_ARGS * sizeof(Oid));
 	for (i = 0; i < nargs; i++)
 	{
-- 
GitLab