all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* Configure test for whether localtime caches TZ
@ 2010-10-30 18:29 Ken Brown
  2010-10-31 18:30 ` Glenn Morris
  0 siblings, 1 reply; 3+ messages in thread
From: Ken Brown @ 2010-10-30 18:29 UTC (permalink / raw)
  To: Emacs

The configure test for whether localtime caches TZ directly modifies the 
environment and so (according to POSIX) might produce unreliable 
results.  Wouldn't it be better to use unsetenv, as in the following 
patch (against the emacs-23 branch):

=== modified file 'configure.in'
--- configure.in        2010-05-10 00:37:59 +0000
+++ configure.in        2010-10-30 18:07:03 +0000
@@ -2441,14 +2441,6 @@
  AC_CACHE_VAL(emacs_cv_localtime_cache,
  [if test x$ac_cv_func_tzset = xyes; then
  AC_TRY_RUN([#include <time.h>
-extern char **environ;
-unset_TZ ()
-{
-  char **from, **to;
-  for (to = from = environ; (*to = *from); from++)
-    if (! (to[0][0] == 'T' && to[0][1] == 'Z' && to[0][2] == '='))
-      to++;
-}
  char TZ_GMT0[] = "TZ=GMT0";
  char TZ_PST8[] = "TZ=PST8";
  main()
@@ -2458,13 +2450,13 @@
    if (putenv (TZ_GMT0) != 0)
      exit (1);
    hour_GMT0 = localtime (&now)->tm_hour;
-  unset_TZ ();
+  unsetenv("TZ");
    hour_unset = localtime (&now)->tm_hour;
    if (putenv (TZ_PST8) != 0)
      exit (1);
    if (localtime (&now)->tm_hour == hour_GMT0)
      exit (1);
-  unset_TZ ();
+  unsetenv("TZ");
    if (localtime (&now)->tm_hour != hour_unset)
      exit (1);
    exit (0);




^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-10-31 23:25 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-30 18:29 Configure test for whether localtime caches TZ Ken Brown
2010-10-31 18:30 ` Glenn Morris
2010-10-31 23:25   ` Ken Brown

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.