Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Shoes may not respect timezones #123
referenced this issue
May 2, 2015
added a commit
Jun 20, 2015
If I compile Shoes on Windows with the RubyInstaller's ruby then Shoes does the correct thing for Time zones. If I compile Shoes with the mingw cross compiled ruby then the time zone problem appears. There does appears to be two different API's for gettimeoutday() in the win32 ruby source code which differ in how the timezone is dealt with. Too soon to say whether the problem is Mingw, Ruby or mine but I do know where to look.
For those who don't want to wait, I've uploaded http://walkabout.mvmanila.com/public/shoes/shoes-3.2.24-gtk2-32.exe that was built with the better Ruby.
Found it. When ./configure runs to build Ruby from source it generates ext/..../config.h file. There are two differences between the RubyInstaller's Ruby and the cross-compiled Ruby
When I remove those two lines and cross compile Ruby and then use that to build Shoes and then install that in Windows, the proper time (and tz) is shown. Yay!
Do I know why Ruby 2.1.x mishandles TZ if that is defined? No. It seems like a ruby bug but they'll point fingers at the mingw cross compiler and I just don't care enough about Windows to start that food fight. I'm going to post-process the config.h after the ruby configure step. I'm a hack.