From: matz@... (Yukihiro Matsumoto) Date: 2004-05-16T21:38:19+09:00 Subject: Re: Bug in Marshal? Hi, In message "Re: Bug in Marshal?" on 04/05/16, Tanaka Akira writes: |In article <1084509554.595111.510.nullmailer@picachu.netlab.jp>, | matz@ruby-lang.org (Yukihiro Matsumoto) writes: | |> 1.9 will preserve this information in the near future. |> |> matz. |> --- time.c 30 Apr 2004 11:10:02 -0000 1.100 |> +++ time.c 14 May 2004 04:38:36 -0000 |> @@ -1904,3 +1904,4 @@ time_mdump(time) |> p = 0x1 << 31 | /* 1 */ |> - tm->tm_year << 14 | /* 17 */ |> + tobj->gmt << 30 | /* 1 */ |> + tm->tm_year << 14 | /* 16 */ |> tm->tm_mon << 10 | /* 4 */ | |I found that this change causes Marshal.load error if GMT time is sent |from 1.9 to 1.8.1. 1.8.2 has fix to ignore this bit. |Why don't you use the bit 31, which is previously filled by 1 ? In that case, we would loose 1.6 compatibility. matz.