[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

utime: still with bug?

Axel Friedrich

3/1/2006 7:44:00 PM

Hello,

with ruby 1.8.4 on Windows XP, there seems still to be an error of 1
hour when assigning mtime to a file by using utime.

Condition: Assigning a daylight saving time while actual time is not
daylight saving time.

The same seems to be OK on Windows 98SE.

I tested it as described in:
<longLine>
http://groups.google.com/group/comp.lang.ruby/browse_frm/th...
342986ebd71
</longLine>


Is there a fix or work-around?


I'm using:
ruby 1.8.4 (2005-12-24) [i386-mswin32] on both systems.


Axel
2 Answers

H.Yamamoto

3/2/2006 3:47:00 AM

0

Hello.

>Hello,
>
>with ruby 1.8.4 on Windows XP, there seems still to be an error of 1
>hour when assigning mtime to a file by using utime.
>
>Condition: Assigning a daylight saving time while actual time is not
>daylight saving time.
>
>The same seems to be OK on Windows 98SE.
>
>I tested it as described in:
><longLine>
>http://groups.google.com/group/comp.lang.ruby/browse_frm/th...
>342986ebd71
></longLine>
>
>
>Is there a fix or work-around?
>
>
>I'm using:
>ruby 1.8.4 (2005-12-24) [i386-mswin32] on both systems.
>
>
>Axel

Sorry, this is regression I introduced when fixed another bug of stat(2) on WinNT.

Index: win32.c
===================================================================
RCS file: /src/ruby/win32/win32.c,v
retrieving revision 1.186
diff -u -w -b -p -r1.186 win32.c
--- win32.c 24 Feb 2006 02:19:44 -0000 1.186
+++ win32.c 2 Mar 2006 03:39:48 -0000
@@ -3223,6 +3223,7 @@ filetime_to_unixtime(const FILETIME *ft)
tm.tm_hour = st.wHour;
tm.tm_min = st.wMinute;
tm.tm_sec = st.wSecond;
+ tm.tm_isdst = -1;
t = mktime(&tm);
return t == -1 ? 0 : t;
}

I'll commit this on CVS.



Axel Friedrich

3/2/2006 6:31:00 AM

0


> I'll commit this on CVS.

Thank You! (I'm looking forward to get the "right" utime.)

> http://search.cpan.org/~shay/Win32-UT...
1.45/lib/Win32/UTCFileTime.pm

*Very* interesting; and even the presentation of the solution in
chapter "The Final Solution" and "More problems: utime()".

Axel