From: Michael Paquier Date: Wed, 28 Apr 2021 02:58:08 +0000 (+0900) Subject: Fix use-after-release issue with pg_identify_object_as_address() X-Git-Tag: REL_14_BETA1~123 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=f93f0b5b25068807051edb2f3510614b69bb79ff;p=thirdparty%2Fpostgresql.git Fix use-after-release issue with pg_identify_object_as_address() Spotted by buildfarm member prion, with -DRELCACHE_FORCE_RELEASE. Introduced in f7aab36. Discussion: https://postgr.es/m/2759018.1619577848@sss.pgh.pa.us Backpatch-through: 9.6 --- diff --git a/src/backend/catalog/objectaddress.c b/src/backend/catalog/objectaddress.c index ad9740098e4..d1d7a10b438 100644 --- a/src/backend/catalog/objectaddress.c +++ b/src/backend/catalog/objectaddress.c @@ -5619,7 +5619,7 @@ getObjectIdentityParts(const ObjectAddress *object, break; } trigForm = (Form_pg_event_trigger) GETSTRUCT(tup); - evtname = NameStr(trigForm->evtname); + evtname = pstrdup(NameStr(trigForm->evtname)); appendStringInfoString(&buffer, quote_identifier(evtname)); if (objname) *objname = list_make1(evtname);