summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>2013-06-22 16:22:25 +0300
committerEli Zaretskii <eliz@gnu.org>2013-06-22 16:22:25 +0300
commit138d020e1b84005e12e8d4f5557bd6387bf26f51 (patch)
treea9e139f53d1639da7a28cd707e9979f3e996065b
parent5b65c5b916e458e5eed3c74f038dd11c008fdfd8 (diff)
downloadgunmake-138d020e1b84005e12e8d4f5557bd6387bf26f51.tar.gz
Compare internal commands of non-Unix shells on Windows case-insensitively.
job.c (construct_command_argv_internal) [WINDOWS32]: Use case-insensitive comparison with internal commands of non-Unix shells.
-rw-r--r--ChangeLog4
-rw-r--r--job.c4
2 files changed, 6 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index c01a323..17a68f2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2013-06-22 Eli Zaretskii <eliz@gnu.org>
+ * job.c (construct_command_argv_internal) [WINDOWS32]: Use
+ case-insensitive comparison with internal commands of non-Unix
+ shells.
+
* main.c (find_and_set_default_shell): Don't use file_exists_p or
dir_file_exists_p, as those call readdir, which can fail if PATH
includes directories with non-ASCII characters, and that would
diff --git a/job.c b/job.c
index ef24caa..8b1a8df 100644
--- a/job.c
+++ b/job.c
@@ -3172,12 +3172,12 @@ construct_command_argv_internal (char *line, char **restp, char *shell,
{
if (streq (sh_cmds[j], new_argv[0]))
goto slow;
-# ifdef __EMX__
+#if defined(__EMX__) || defined(WINDOWS32)
/* Non-Unix shells are case insensitive. */
if (!unixy_shell
&& strcasecmp (sh_cmds[j], new_argv[0]) == 0)
goto slow;
-# endif
+#endif
}
}