ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Похоже на багу в date_local в ssi



Hello!

On Fri, Feb 19, 2010 at 03:13:24PM +0300, Oleg Motienko wrote:

> Привет всем.
> 
> В ssi вот такая конструкция выдаёт время на 180 секунд вперед.
> <!--# config timefmt="%s" --><!--# echo  var="date_local" -->
> 
> А такая - верное.
> <!--# config timefmt="%s" --><!--# echo  var="date_gmt" -->
> 
> Почему-то возникает предположение, что 180 - это моя таймзона  (GMT +3)* 60.
> Только, почему-то 180 секунд, а не минут.

Патч.

Maxim Dounin
# HG changeset patch
# User Maxim Dounin <mdounin@xxxxxxxxxx>
# Date 1266584382 -10800
# Node ID 843f000d1b37757c0753853d671c94192dcb8dcc
# Parent  9009f1982e02d6f0614d4ddeae0672042442775a
SSI: time format "%s" means seconds since the Epoch in UTC

Adding local timezone offset is wrong here at all.

diff --git a/src/http/modules/ngx_http_ssi_filter_module.c 
b/src/http/modules/ngx_http_ssi_filter_module.c
--- a/src/http/modules/ngx_http_ssi_filter_module.c
+++ b/src/http/modules/ngx_http_ssi_filter_module.c
@@ -2615,8 +2615,7 @@ ngx_http_ssi_date_gmt_local_variable(ngx
             return NGX_ERROR;
         }
 
-        v->len = ngx_sprintf(v->data, "%T", tp->sec + (gmt ? 0 : tp->gmtoff))
-                 - v->data;
+        v->len = ngx_sprintf(v->data, "%T", tp->sec) - v->data;
 
         return NGX_OK;
     }
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.