diff options
author | Richard M. Stallman <rms@gnu.org> | 1996-06-07 17:26:51 +0000 |
---|---|---|
committer | Richard M. Stallman <rms@gnu.org> | 1996-06-07 17:26:51 +0000 |
commit | b4be69268cd70b70e8e581321db7b9fb664276a3 (patch) | |
tree | 43e37a6f1ba7325c75c13a0c07df3bc7d6e1c113 | |
parent | 106605f27b5532ac82e1b014b89c4a198c8b8469 (diff) | |
download | emacs-b4be69268cd70b70e8e581321db7b9fb664276a3.tar.gz |
(sys_kill): Don't try to terminate a DOS process.
-rw-r--r-- | src/w32proc.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/w32proc.c b/src/w32proc.c index 62b373e642f..1f8e8353238 100644 --- a/src/w32proc.c +++ b/src/w32proc.c @@ -1055,9 +1055,11 @@ sys_kill (int pid, int sig) else { /* Kill the process. On Win32 this doesn't kill child processes - so it doesn't work very well for shells which is why it's - not used in every case. */ - if (!TerminateProcess (proc_hand, 0xff)) + so it doesn't work very well for shells which is why it's not + used in every case. Also, don't try to terminate DOS processes + (on Win95), because this will hang Emacs. */ + if (!(cp && cp->is_dos_process) + && !TerminateProcess (proc_hand, 0xff)) { DebPrint (("sys_kill.TerminateProcess returned %d " "for pid %lu\n", GetLastError (), pid)); |