[ruby-trunk - Bug #5596][Open] Windows上でFile.utimeにtime tの負の値を与えるとSEGV

Issue #5596 has been reported by 宗介 相良.


Bug #5596: Windows上でFile.utimeにtime_tの負の値を与えるとSEGV

Author: 宗介 相良
Status: Open
Priority: Normal
Assignee:
Category:
Target version: 1.9.3
ruby -v: ruby 1.9.3p0 (2011-10-30 revision 33570) [i386-mingw32]

Windows 上で File.utime に time_t の負の値を与えると SEGV します。

ruby -e “t = Time.at(-1); File.utime(t, t, ‘.’)”
-e:1: [BUG] Segmentation fault

原因は win32/win32.c の unixtime_to_filetime で呼び出される localtime
関数の戻り値を確認していないため、NULL ポインタを参照するためです。

対応をお願いします。