summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog4
-rw-r--r--file.c9
2 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 72f4a52ee5..6d5ef3e354 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Mon Mar 15 07:16:09 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * file.c (FILE_ALT_SEPARATOR): separated condition.
+
Mon Mar 15 04:41:25 2010 Nobuyoshi Nakada <nobu@ruby-lang.org>
* io.c (rb_io_each_codepoint): read directly when readconv is
diff --git a/file.c b/file.c
index ce984f395b..557e232c84 100644
--- a/file.c
+++ b/file.c
@@ -2491,7 +2491,10 @@ rb_file_s_umask(int argc, VALUE *argv)
#if defined __CYGWIN__ || defined DOSISH
#define DOSISH_UNC
#define DOSISH_DRIVE_LETTER
-#define isdirsep(x) ((x) == '/' || (x) == '\\')
+#define FILE_ALT_SEPARATOR '\\'
+#endif
+#ifdef FILE_ALT_SEPARATOR
+#define isdirsep(x) ((x) == '/' || (x) == FILE_ALT_SEPARATOR)
#else
#define isdirsep(x) ((x) == '/')
#endif
@@ -5098,8 +5101,8 @@ Init_File(void)
rb_define_singleton_method(rb_cFile, "split", rb_file_s_split, 1);
rb_define_singleton_method(rb_cFile, "join", rb_file_s_join, -2);
-#ifdef DOSISH
- rb_define_const(rb_cFile, "ALT_SEPARATOR", rb_obj_freeze(rb_usascii_str_new2("\\")));
+#ifdef FILE_ALT_SEPARATOR
+ rb_define_const(rb_cFile, "ALT_SEPARATOR", rb_obj_freeze(rb_usascii_str_new2(file_alt_separator)));
#else
rb_define_const(rb_cFile, "ALT_SEPARATOR", Qnil);
#endif