From: Tom Lane Date: Tue, 8 Jun 2004 20:28:21 +0000 (+0000) Subject: Add missing check for too-few-inputs when replacing a zero-dimensional X-Git-Tag: REL8_0_0BETA1~412 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=32af13f03d7d7ac3b0664800e707b3765005490c;p=postgresql Add missing check for too-few-inputs when replacing a zero-dimensional array. --- diff --git a/src/backend/utils/adt/arrayfuncs.c b/src/backend/utils/adt/arrayfuncs.c index 6511efb356..62361932f9 100644 --- a/src/backend/utils/adt/arrayfuncs.c +++ b/src/backend/utils/adt/arrayfuncs.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.103 2004/06/06 00:41:27 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/arrayfuncs.c,v 1.104 2004/06/08 20:28:21 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -1837,6 +1837,12 @@ array_set_slice(ArrayType *array, lb[i] = lowerIndx[i]; } + /* complain if too few source items; we ignore extras, however */ + if (nelems < ArrayGetNItems(nSubscripts, dim)) + ereport(ERROR, + (errcode(ERRCODE_ARRAY_SUBSCRIPT_ERROR), + errmsg("source array too small"))); + return construct_md_array(dvalues, nSubscripts, dim, lb, elmtype, elmlen, elmbyval, elmalign); }