Code

src/utils_params.c: Use "gmtime_r" rather than "localtime_r" …
authorFlorian Forster <ff@octo.it>
Fri, 18 Jun 2010 20:34:54 +0000 (22:34 +0200)
committerFlorian Forster <octo@leeloo.lan.home.verplant.org>
Fri, 18 Jun 2010 20:34:54 +0000 (22:34 +0200)
… to work around an Apache or FastCGI bug.

src/utils_params.c

index dbe085d807233a583ae827cd3cb124f864fb3507..9f1e4e018b151e189d2dbc02d9022e42f444604b 100644 (file)
@@ -275,7 +275,10 @@ int time_to_rfc1123 (time_t t, char *buffer, size_t buffer_size) /* {{{ */
   struct tm tm_tmp;
   size_t status;
 
-  if (localtime_r (&t, &tm_tmp) == NULL)
+  /* Apparently Apache or FastCGI doesn't honor the timezone information and
+   * thus "fixes" the last modified header when the timezone information is
+   * east of GMT. With "gmtime_r" this problem doesn't occur. */
+  if (gmtime_r (&t, &tm_tmp) == NULL)
     return (errno);
 
   status = strftime (buffer, buffer_size, "%a, %d %b %Y %T %z", &tm_tmp);