From 7695365a0e6ffada25b74e1ac8fa0a54bc5aa32d Mon Sep 17 00:00:00 2001 From: michael Date: Sun, 14 Sep 2008 04:00:49 +0000 Subject: strftime_tz patch from Bernhard Walle git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@894 3ae390bd-cb1e-0410-b409-cd5a39f66f1f --- plugin_time.c | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'plugin_time.c') diff --git a/plugin_time.c b/plugin_time.c index bae321c..a9cca8f 100644 --- a/plugin_time.c +++ b/plugin_time.c @@ -68,6 +68,15 @@ static void my_stftime_tz(RESULT * result, RESULT * arg1, RESULT * arg2, RESULT char *old_tz; old_tz = getenv("TZ"); + + /* + * because the next setenv() call may overwrite that string, we + * duplicate it here + */ + if (old_tz) { + old_tz = strdup(old_tz); + } + setenv("TZ", tz, 1); tzset(); @@ -80,6 +89,8 @@ static void my_stftime_tz(RESULT * result, RESULT * arg1, RESULT * arg2, RESULT } tzset(); + free(old_tz); + SetResult(&result, R_STRING, value); } -- cgit v1.2.3