> Date: Wed, 16 Aug 2006 21:21:21 -0400 > From: Bill Hoffman <[EMAIL PROTECTED]> > > *** make-3.81/job.c Sun Mar 19 22:03:04 2006 > --- ../make-3.81/job.c Wed Aug 16 19:42:14 2006 > *************** construct_command_argv_internal (char *l > *** 2297,2302 **** > --- 2297,2316 ---- > 0 }; > char* sh_chars; > char** sh_cmds; > + #elif defined(HAVE_DOS_PATHS) > + /* This is required if the MSYS/Cygwin ports (which do not define > + WINDOWS32) are compiled with HAVE_DOS_PATHS defined, which uses > + sh_chars_sh[] directly (see below). The value is identical to > + the one above for WINDOWS32 platforms. */ > + static char sh_chars_sh[] = "#;\"*?[]&|<>(){}$`^"; > + static char *sh_cmds_sh[] = { "cd", "eval", "exec", "exit", "login", > + "logout", "set", "umask", "wait", "while", "for", > + "case", "if", ":", ".", "break", "continue", > + "export", "read", "readonly", "shift", "times", > + "trap", "switch", "test", "echo", 0}; > + char *sh_chars; > + char **sh_cmds; > + > #elif defined(__riscos__) > static char sh_chars[] = ""; > static char *sh_cmds[] = { 0 }; > *************** construct_command_argv_internal (char *l > *** 2326,2331 **** > --- 2340,2351 ---- > sh_chars = sh_chars_sh; > } > #endif /* WINDOWS32 */ > + #if defined(HAVE_DOS_PATHS) && !defined(WINDOWS32) > + int slow_flag = 0; > + > + sh_cmds = sh_cmds_sh; > + sh_chars = sh_chars_sh; > + #endif /* WINDOWS32 */ > > if (restp != NULL) > *restp = NULL; > > The crash was caused because sh_cmds and sh_chars were only initialized > if WINDOWS32 was set. If you add the initialization make seems to work > fine. I ran make check and all tests passed. > > Can this patch be moved into the main tree?
I agree with this patch. Paul, can we include it in the sources? _______________________________________________ Make-w32 mailing list Make-w32@gnu.org http://lists.gnu.org/mailman/listinfo/make-w32