From 3117afa75d6cdb27082a82654f69a53daa9ddda8 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Mon, 8 Aug 2005 23:39:01 +0000 Subject: [PATCH] Fix crash when reading 'timezone = unknown' from postgresql.conf during SIGHUP; it's not OK for an assign_hook to return a non-malloc'd string. Problem was introduced during timezone library rewrite. --- src/backend/commands/variable.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/backend/commands/variable.c b/src/backend/commands/variable.c index 9254d57e345..845c59625d6 100644 --- a/src/backend/commands/variable.c +++ b/src/backend/commands/variable.c @@ -9,7 +9,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/variable.c,v 1.112 2005/07/25 22:12:32 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/variable.c,v 1.113 2005/08/08 23:39:01 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -346,10 +346,13 @@ assign_timezone(const char *value, bool doit, GucSource source) * pg_timezone_initialize() will eventually select a default * value from the environment. */ - const char *curzone = pg_get_timezone_name(global_timezone); + if (doit) + { + const char *curzone = pg_get_timezone_name(global_timezone); - if (curzone) - value = curzone; + if (curzone) + value = curzone; + } } else { -- 2.39.5