aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/backend/catalog/pg_constraint.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/src/backend/catalog/pg_constraint.c b/src/backend/catalog/pg_constraint.c
index e953000c01d..9c05a98d28c 100644
--- a/src/backend/catalog/pg_constraint.c
+++ b/src/backend/catalog/pg_constraint.c
@@ -688,7 +688,6 @@ findDomainNotNullConstraint(Oid typid)
AttrNumber
extractNotNullColumn(HeapTuple constrTup)
{
- AttrNumber colnum;
Datum adatum;
ArrayType *arr;
@@ -704,13 +703,9 @@ extractNotNullColumn(HeapTuple constrTup)
ARR_DIMS(arr)[0] != 1)
elog(ERROR, "conkey is not a 1-D smallint array");
- memcpy(&colnum, ARR_DATA_PTR(arr), sizeof(AttrNumber));
- Assert(colnum > 0 && colnum <= MaxAttrNumber);
+ /* We leak the detoasted datum, but we don't care */
- if ((Pointer) arr != DatumGetPointer(adatum))
- pfree(arr); /* free de-toasted copy, if any */
-
- return colnum;
+ return ((AttrNumber *) ARR_DATA_PTR(arr))[0];
}
/*