summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Gustafsson2024-09-05 13:32:22 +0000
committerDaniel Gustafsson2024-09-05 13:32:22 +0000
commit85837b8037ada19d319fa4d3ba99c72205868199 (patch)
treecda867c388218f6ae5d83ebab59c7aa23073d56f
parent4af123ad45bd5e91221983da1152033e6153498c (diff)
Fix handling of NULL return value in typarray lookup
Commit 6ebeeae29 accidentally omitted testing the return value from findTypeByOid which can return NULL. Fix by adding a check to make sure that we have a pointer to dereference. Author: Ranier Vilela <ranier.vf@gmail.com> Reviewed-by: Nathan Bossart <nathandbossart@gmail.com> Reviewed-by: Daniel Gustafsson <daniel@yesql.se> Discussion: https://postgr.es/m/CAEudQAqfMTH8Ya_J6E-NW_y_JyDFDxtQ4V_g6nY_1=0oDbQqdg@mail.gmail.com
-rw-r--r--src/bin/pg_dump/pg_dump.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/bin/pg_dump/pg_dump.c b/src/bin/pg_dump/pg_dump.c
index dacb033e989..546e7e4ce1a 100644
--- a/src/bin/pg_dump/pg_dump.c
+++ b/src/bin/pg_dump/pg_dump.c
@@ -5420,7 +5420,10 @@ binary_upgrade_set_type_oids_by_type_oid(Archive *fout,
pg_type_oid);
tinfo = findTypeByOid(pg_type_oid);
- pg_type_array_oid = tinfo->typarray;
+ if (tinfo)
+ pg_type_array_oid = tinfo->typarray;
+ else
+ pg_type_array_oid = InvalidOid;
if (!OidIsValid(pg_type_array_oid) && force_array_type)
pg_type_array_oid = get_next_possible_free_pg_type_oid(fout, upgrade_query);