diff options
author | ashok <ashok> | 2016-07-09 14:18:22 (GMT) |
---|---|---|
committer | ashok <ashok> | 2016-07-09 14:18:22 (GMT) |
commit | cc8c25008d6a30ceb0b4a6946e4a3d45431637c6 (patch) | |
tree | 363d4cf0de55087e7ce2d4a73b1c80c68207922e /win | |
parent | 11dc688b81fc6d55eb42fd23e063a5310569d71d (diff) | |
download | tcl-cc8c25008d6a30ceb0b4a6946e4a3d45431637c6.zip tcl-cc8c25008d6a30ceb0b4a6946e4a3d45431637c6.tar.gz tcl-cc8c25008d6a30ceb0b4a6946e4a3d45431637c6.tar.bz2 |
Bugfix [9ece99d58b]. Make exec understand .CMD files on Windows.
Diffstat (limited to 'win')
-rwxr-xr-x | win/tclWinFile.c | 1 | ||||
-rw-r--r-- | win/tclWinPipe.c | 7 |
2 files changed, 4 insertions, 4 deletions
diff --git a/win/tclWinFile.c b/win/tclWinFile.c index 3e8a171..dbfdfd0 100755 --- a/win/tclWinFile.c +++ b/win/tclWinFile.c @@ -1795,7 +1795,6 @@ NativeIsExec( if ((_tcsicmp(path+len-3, TEXT("exe")) == 0) || (_tcsicmp(path+len-3, TEXT("com")) == 0) || (_tcsicmp(path+len-3, TEXT("cmd")) == 0) - || (_tcsicmp(path+len-3, TEXT("ps1")) == 0) || (_tcsicmp(path+len-3, TEXT("bat")) == 0)) { return 1; } diff --git a/win/tclWinPipe.c b/win/tclWinPipe.c index aff8836..382addd 100644 --- a/win/tclWinPipe.c +++ b/win/tclWinPipe.c @@ -897,7 +897,7 @@ TclpGetPid( * * The complete Windows search path is searched to find the specified * executable. If an executable by the given name is not found, - * automatically tries appending ".com", ".exe", and ".bat" to the + * automatically tries appending standard extensions to the * executable name. * * Results: @@ -1292,7 +1292,7 @@ ApplicationType( Tcl_DString nameBuf, ds; const TCHAR *nativeName; TCHAR nativeFullPath[MAX_PATH]; - static const char extensions[][5] = {"", ".com", ".exe", ".bat"}; + static const char extensions[][5] = {"", ".com", ".exe", ".bat", ".cmd"}; /* * Look for the program as an external program. First try the name as it @@ -1337,7 +1337,8 @@ ApplicationType( Tcl_DStringFree(&ds); ext = strrchr(fullName, '.'); - if ((ext != NULL) && (strcasecmp(ext, ".bat") == 0)) { + if ((ext != NULL) && + (strcasecmp(ext, ".cmd") == 0 || strcasecmp(ext, ".bat") == 0)) { applType = APPL_DOS; break; } |