Johan Herland schrieb: > + /* If rev-list --stdin encounters an unknown commit, it terminates, > + * which will cause SIGPIPE in the write loop below. */ Under the conditions you describe here... > + signal(SIGPIPE, SIG_IGN); ... and SIGPIPE being ignored... > + > + err = start_command(&revlist); > + if (err) { > + error("could not run rev-list"); > + return err; > + } > > - for (i = 0; argv[i]; i++) > - free(argv[i]); > - free(argv); > - return err; > + for (ref = ref_map; ref; ref = ref->next) { > + if (write_in_full(revlist.in, sha1_to_hex(ref->old_sha1), 40) < 0 || > + write_in_full(revlist.in, "\n", 1) < 0) { > + error("failed write to rev-list"); > + err = errno; ... don't you get this error message with errno set to EPIPE? Previously, there was no error message. -- Hannes -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html