Save errno in handle_alias()
[gitweb.git] / merge-index.c
index 727527fd59480a11a563108fa5d55a2696a40e98..0498a6f45e53947e356c6a390869d3f8194f05b7 100644 (file)
@@ -1,5 +1,6 @@
 #include <sys/types.h>
 #include <sys/wait.h>
+#include <signal.h>
 
 #include "cache.h"
 
@@ -99,9 +100,15 @@ int main(int argc, char **argv)
 {
        int i, force_file = 0;
 
+       /* Without this we cannot rely on waitpid() to tell
+        * what happened to our children.
+        */
+       signal(SIGCHLD, SIG_DFL);
+
        if (argc < 3)
                usage("git-merge-index [-o] [-q] <merge-program> (-a | <filename>*)");
 
+       setup_git_directory();
        read_cache();
 
        i = 1;