changeset 16843:4881110afeb8

execute, spawn-pipe: Escape '*' characters in arguments on Windows. * lib/w32spawn.h (SHELL_SPECIAL_CHARS): Add the '*' character.
author Bruno Haible <bruno@clisp.org>
date Wed, 09 May 2012 03:40:26 +0200
parents 18d46d47a62a
children d6e95ab13906
files ChangeLog lib/w32spawn.h
diffstat 2 files changed, 8 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2012-05-08  Bruno Haible  <bruno@clisp.org>
+
+	execute, spawn-pipe: Escape '*' characters in arguments on Windows.
+	* lib/w32spawn.h (SHELL_SPECIAL_CHARS): Add the '*' character.
+
 2012-05-08  Bruno Haible  <bruno@clisp.org>
 
 	Tests for module 'system-quote'.
--- a/lib/w32spawn.h
+++ b/lib/w32spawn.h
@@ -115,8 +115,10 @@
        \" -> "
        \\\" -> \"
        \\\\\" -> \\"
+   - '*' characters may get expanded or lead to a failure with error code
+     ERROR_PATH_NOT_FOUND.
  */
-#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
+#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037*"
 #define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037"
 static char **
 prepare_spawn (char **argv)