From e4c49238bd02bfc18c52a5d86b6c0daae37b7fc7 Mon Sep 17 00:00:00 2001 From: Ben Schmidt Date: Mon, 17 Nov 2008 21:36:36 +0100 Subject: [PATCH] Use default SIGCHLD handler in Vim processes --- src/MacVim/MMAppController.m | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/MacVim/MMAppController.m b/src/MacVim/MMAppController.m index 17e8a826a3..db7fa10892 100644 --- a/src/MacVim/MMAppController.m +++ b/src/MacVim/MMAppController.m @@ -1954,6 +1954,11 @@ executeInLoginShell(NSString *path, NSArray *args) return -1; } else if (pid == 0) { // Child process + + // We need to undo our zombie avoidance as Vim waits for and needs + // the exit statuses of processes it spawns. + signal(SIGCHLD, SIG_DFL); + if (close(ds[1]) == -1) exit(255); if (dup2(ds[0], 0) == -1) exit(255);