From 04344b57c717271a372d1e6335309e0fe53458b6 Mon Sep 17 00:00:00 2001 From: Florin Irion Date: Tue, 3 Mar 2026 17:44:18 +0100 Subject: [PATCH v1 2/2] Fix UBSAN crash in EventTriggerCollectAlterTSConfig Guard the palloc_array + memcpy with an ndicts > 0 check. The command struct is already palloc0'd so dictIds defaults to NULL. --- src/backend/commands/event_trigger.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/event_trigger.c b/src/backend/commands/event_trigger.c index 028f9e2de90..2898967fa67 100644 --- a/src/backend/commands/event_trigger.c +++ b/src/backend/commands/event_trigger.c @@ -2004,8 +2004,11 @@ EventTriggerCollectAlterTSConfig(AlterTSConfigurationStmt *stmt, Oid cfgId, command->in_extension = creating_extension; ObjectAddressSet(command->d.atscfg.address, TSConfigRelationId, cfgId); - command->d.atscfg.dictIds = palloc_array(Oid, ndicts); - memcpy(command->d.atscfg.dictIds, dictIds, sizeof(Oid) * ndicts); + if (ndicts > 0) + { + command->d.atscfg.dictIds = palloc_array(Oid, ndicts); + memcpy(command->d.atscfg.dictIds, dictIds, sizeof(Oid) * ndicts); + } command->d.atscfg.ndicts = ndicts; command->parsetree = (Node *) copyObject(stmt); -- 2.45.1