execute, spawn-pipe: Escape '*' characters in arguments on Windows.
authorBruno Haible <bruno@clisp.org>
Wed, 9 May 2012 01:40:26 +0000 (03:40 +0200)
committerBruno Haible <bruno@clisp.org>
Wed, 9 May 2012 01:40:26 +0000 (03:40 +0200)
* lib/w32spawn.h (SHELL_SPECIAL_CHARS): Add the '*' character.

ChangeLog
lib/w32spawn.h

index d329c3a..ba38632 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 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'.
        * modules/system-quote-tests: New file.
        * tests/test-system-quote.sh: New file.
index 4cdb843..bbc7a3d 100644 (file)
@@ -115,8 +115,10 @@ undup_safer_noinherit (int tempfd, int origfd)
        \" -> "
        \\\" -> \"
        \\\\\" -> \\"
+   - '*' 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)