From c7b94bbad96144d8e31b0437ea40fdb1dd82190c Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sat, 23 Apr 2005 05:39:01 +0000 Subject: [PATCH] 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. --- contrib/intagg/int_aggregate.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/contrib/intagg/int_aggregate.c b/contrib/intagg/int_aggregate.c index 75cd34fe6e3..1ab4c54a55d 100644 --- a/contrib/intagg/int_aggregate.c +++ b/contrib/intagg/int_aggregate.c @@ -222,6 +222,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); -- 2.39.5