Backport #4148: Time#strftime with %T broken on Windows
http://redmine.ruby-lang.org/issues/show/4148

Author: Marc Rene Arns
Status: Open, Priority: Normal

On unix:

Time.now.strftime('%T') #=> "15:33:03"
Time.now.strftime('%Y') #=> "2010"
Time.now.strftime('%Y %T') #=> "2010 15:33:03"
Time.now.strftime('%H:%M:%S') #=> "15:33:03"

On Windows 7 (64bit) (ruby 1.8.7, patchlevel 249 i386-mingw32):
Time.now.strftime('%T') #=> ""
Time.now.strftime('%Y') #=> "2010"
Time.now.strftime('%Y %T') #=> ""
Time.now.strftime('%H:%M:%S') #=> "15:33:03"

So if %T is included in the string, everything breaks and "" is returned.
I guess that problem might also exist on other windows plattforms.
Since '%H:%M:%S' works it could be used instead, but some libraries, e.g. Rack::Session::Cookie use '%T' which leads to subtile bugs (e.g. Expire-Date for Cookies not set).

I haven't tested with ruby 1.9 maybe, this bug also exists there.


----------------------------------------
http://redmine.ruby-lang.org