summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--win32/win32.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7889a5bbd3d..eeb56e9e822 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Tue Aug 4 22:10:34 2009 NAKAMURA Usaku <usa@ruby-lang.org>
+
+ * win32/win32.c (has_redirection): need to execute shell if commandline
+ includes newline. cf. [ruby-core:24560]
+
Tue Aug 4 15:06:58 2009 Akinori MUSHA <knu@iDaemons.org>
* lib/ipaddr.rb (IPAddr#{eql?,hash}): Add IPAddr#{eql?,hash} so
diff --git a/win32/win32.c b/win32/win32.c
index 8f2a4ac8fad..fc33b1152c6 100644
--- a/win32/win32.c
+++ b/win32/win32.c
@@ -1235,8 +1235,8 @@ has_redirection(const char *cmd)
const char *ptr;
//
- // Scan the string, looking for redirection (< or >) or pipe
- // characters (|) that are not in a quoted string
+ // Scan the string, looking for redirection characters (< or >), pipe
+ // character (|) or newline (\n) that are not in a quoted string
//
for (ptr = cmd; *ptr;) {
@@ -1253,6 +1253,7 @@ has_redirection(const char *cmd)
case '>':
case '<':
case '|':
+ case '\n':
if (!quote)
return TRUE;
ptr++;