From: Tom Lane Date: Sat, 23 Apr 2005 05:38:22 +0000 (+0000) Subject: int_aggregate's int_enum() doesn't work correctly with arrays that X-Git-Tag: REL8_1_0BETA1~960 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0548497cc5ae9d8e0ab3ae72d7f7f8ad47f9bb84;p=thirdparty%2Fpostgresql.git int_aggregate's int_enum() doesn't work correctly with arrays that aren't 1-D, so give an error message instead of failing. Per report from Ron Mayer. --- diff --git a/contrib/intagg/int_aggregate.c b/contrib/intagg/int_aggregate.c index 1c95d64af61..292855018ac 100644 --- a/contrib/intagg/int_aggregate.c +++ b/contrib/intagg/int_aggregate.c @@ -242,6 +242,9 @@ int_enum(PG_FUNCTION_ARGS) pc->p = p; pc->flags = 0; } + /* Now that we have a detoasted array, verify dimensions */ + if (pc->p->a.ndim != 1) + elog(ERROR, "int_enum only accepts 1-D arrays"); pc->num = 0; fcinfo->context = (Node *) pc; MemoryContextSwitchTo(oldcontext);