summaryrefslogtreecommitdiff
path: root/src/backend/utils/fmgr
diff options
context:
space:
mode:
authorTom Lane2021-01-25 18:03:11 +0000
committerTom Lane2021-01-25 18:03:43 +0000
commit07d46fceb4254b00e79f3d06419cbae13b0ecb5a (patch)
tree94028eaf28251b2ea91c00c16a625075d51271a7 /src/backend/utils/fmgr
parentd18e75664a2fda2e4d5cc433d68e37fc0e9499f2 (diff)
Fix broken ruleutils support for function TRANSFORM clauses.
I chanced to notice that this dumped core due to a faulty Assert. To add insult to injury, the output has been misformatted since v11. Obviously we need some regression testing here. Discussion: https://postgr.es/m/[email protected]
Diffstat (limited to 'src/backend/utils/fmgr')
-rw-r--r--src/backend/utils/fmgr/funcapi.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/utils/fmgr/funcapi.c b/src/backend/utils/fmgr/funcapi.c
index 2fd2e41f99b..717b62907c7 100644
--- a/src/backend/utils/fmgr/funcapi.c
+++ b/src/backend/utils/fmgr/funcapi.c
@@ -1357,7 +1357,9 @@ get_func_arg_info(HeapTuple procTup,
/*
* get_func_trftypes
*
- * Returns the number of transformed types used by function.
+ * Returns the number of transformed types used by the function.
+ * If there are any, a palloc'd array of the type OIDs is returned
+ * into *p_trftypes.
*/
int
get_func_trftypes(HeapTuple procTup,
@@ -1386,7 +1388,6 @@ get_func_trftypes(HeapTuple procTup,
ARR_HASNULL(arr) ||
ARR_ELEMTYPE(arr) != OIDOID)
elog(ERROR, "protrftypes is not a 1-D Oid array or it contains nulls");
- Assert(nelems >= ((Form_pg_proc) GETSTRUCT(procTup))->pronargs);
*p_trftypes = (Oid *) palloc(nelems * sizeof(Oid));
memcpy(*p_trftypes, ARR_DATA_PTR(arr),
nelems * sizeof(Oid));