diff options
| author | takahashim <[email protected]> | 2015-12-06 00:07:16 +0900 |
|---|---|---|
| committer | takahashim <[email protected]> | 2015-12-08 00:29:42 +0900 |
| commit | dd754220ce2a53f8cf44362a2b2d1f59f40e62d5 (patch) | |
| tree | 645df51d35e9932b74f6d8503c34a61670cff987 /src/file_test.c | |
| parent | 68de1e4fc5a124689e3ad975172c77071e4e63dc (diff) | |
| download | mruby-dd754220ce2a53f8cf44362a2b2d1f59f40e62d5.tar.gz mruby-dd754220ce2a53f8cf44362a2b2d1f59f40e62d5.zip | |
Fix for windows(mingw)
* File.expand_path: support drive letter and ALT_SEPARATOR
* File.dirname: support ALT_SEPARATOR
* File.basename: ditto.
* IO.popen: raise NotImplementedError
* IO.pipe: ditto.
* `cmd`: ditto.
* File#flock: ditto.
* FileTest.pipe?: ditto.
* FileTest.symlink?: ditto.
* FileTest.socket?: ditto.
Diffstat (limited to 'src/file_test.c')
| -rw-r--r-- | src/file_test.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/file_test.c b/src/file_test.c index 6c380c4a5..da2ef77b0 100644 --- a/src/file_test.c +++ b/src/file_test.c @@ -128,6 +128,9 @@ mrb_filetest_s_directory_p(mrb_state *mrb, mrb_value klass) mrb_value mrb_filetest_s_pipe_p(mrb_state *mrb, mrb_value klass) { +#if defined(_WIN32) || defined(_WIN64) + mrb_raise(mrb, E_NOTIMP_ERROR, "pipe is not supported on this platform"); +#else #ifdef S_IFIFO # ifndef S_ISFIFO # define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO) @@ -145,6 +148,7 @@ mrb_filetest_s_pipe_p(mrb_state *mrb, mrb_value klass) #endif return mrb_false_value(); +#endif } /* @@ -157,6 +161,9 @@ mrb_filetest_s_pipe_p(mrb_state *mrb, mrb_value klass) mrb_value mrb_filetest_s_symlink_p(mrb_state *mrb, mrb_value klass) { +#if defined(_WIN32) || defined(_WIN64) + mrb_raise(mrb, E_NOTIMP_ERROR, "symlink is not supported on this platform"); +#else #ifndef S_ISLNK # ifdef _S_ISLNK # define S_ISLNK(m) _S_ISLNK(m) @@ -184,6 +191,7 @@ mrb_filetest_s_symlink_p(mrb_state *mrb, mrb_value klass) #endif return mrb_false_value(); +#endif } /* @@ -196,6 +204,9 @@ mrb_filetest_s_symlink_p(mrb_state *mrb, mrb_value klass) mrb_value mrb_filetest_s_socket_p(mrb_state *mrb, mrb_value klass) { +#if defined(_WIN32) || defined(_WIN64) + mrb_raise(mrb, E_NOTIMP_ERROR, "socket is not supported on this platform"); +#else #ifndef S_ISSOCK # ifdef _S_ISSOCK # define S_ISSOCK(m) _S_ISSOCK(m) @@ -223,6 +234,7 @@ mrb_filetest_s_socket_p(mrb_state *mrb, mrb_value klass) #endif return mrb_false_value(); +#endif } /* |
