diff options
author | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-02-24 17:51:02 +0000 |
---|---|---|
committer | eban <eban@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2001-02-24 17:51:02 +0000 |
commit | f3d7d9fe48148bfd38d51443912994e04c4800dd (patch) | |
tree | 9391ebc4ad73e87fe1d0f0a93f4a5b232683dc02 | |
parent | 9ce5d1f0f5d1c87406ba644c5f2662a6a1b843b3 (diff) | |
download | ruby-f3d7d9fe48148bfd38d51443912994e04c4800dd.tar.gz |
* file.c (rb_file_s_rename): avoid Cygwin's bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@1215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | file.c | 7 |
2 files changed, 10 insertions, 1 deletions
@@ -1,3 +1,7 @@ +Sun Feb 25 02:45:30 2001 WATANABE Hirofumi <eban@ruby-lang.org> + + * file.c (rb_file_s_rename): avoid Cygwin's bug. + Sat Feb 24 22:14:00 2001 WATANABE Hirofumi <eban@ruby-lang.org> * win32/win32.c (myrename): fix error handling. @@ -1252,8 +1252,13 @@ rb_file_s_rename(obj, from, to) Check_SafeStr(from); Check_SafeStr(to); - if (rename(RSTRING(from)->ptr, RSTRING(to)->ptr) < 0) + if (rename(RSTRING(from)->ptr, RSTRING(to)->ptr) < 0) { +#if defined __CYGWIN__ + extern unsigned long __attribute__((stdcall)) GetLastError(); + errno = GetLastError(); /* This is a Cygwin bug */ +#endif rb_sys_fail(RSTRING(from)->ptr); + } return INT2FIX(0); } |