diff options
| author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-02-20 03:57:36 +0000 |
|---|---|---|
| committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2004-02-20 03:57:36 +0000 |
| commit | 258af4f8c096d434735d4e8907cc2aaa8f6124fc (patch) | |
| tree | 5bf2037ba83b9934f9a8d33ffe89c516c7b57d6c /win32 | |
| parent | a66b647f0cf23b3f331e0671631dd7d12da9807d (diff) | |
| download | ruby-258af4f8c096d434735d4e8907cc2aaa8f6124fc.tar.gz ruby-258af4f8c096d434735d4e8907cc2aaa8f6124fc.tar.xz ruby-258af4f8c096d434735d4e8907cc2aaa8f6124fc.zip | |
* io.c (pipe_open): fix typo.
* win32/win32.c (CreateChild): first argument to CreateProcess() must
have path, not just basename.
git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@5789 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'win32')
| -rw-r--r-- | win32/win32.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/win32/win32.c b/win32/win32.c index 99907cc68..54164322f 100644 --- a/win32/win32.c +++ b/win32/win32.c @@ -12,6 +12,7 @@ #include "ruby.h" #include "rubysig.h" +#include "dln.h" #include <fcntl.h> #include <process.h> #include <sys/stat.h> @@ -901,7 +902,18 @@ CreateChild(const char *cmd, const char *prog, SECURITY_ATTRIBUTES *psa, HANDLE dwCreationFlags = (NORMAL_PRIORITY_CLASS); if (prog) { - shell = prog; + char *p = dln_find_exe(prog, NULL); + if (!p) { + shell = prog; + } + else { + shell = p; + while (*p) { + if ((unsigned char)*p == '/') + *p = '\\'; + p = CharNext(p); + } + } } else { int redir = -1; |
