Hi, On Fri, May 23, 2008 at 02:40:41PM -0700, Junio C Hamano wrote: > Clemens Buchacher <drizzd@xxxxxx> writes: > > +static void remove_locks_on_signal(int signo) > > +{ > > + remove_locks(); > > + signal(SIGINT, SIG_DFL); > > + raise(signo); > > +} > > + > > If you caught signo, shouldn't you be resetting that signo not SIGINT? True. I suppose we should fix that in remove_lock_file_on_signal() as well, then? It does exactly the same thing. > > static void remote_ls(const char *path, int flags, > > void (*userFunc)(struct remote_ls_ctx *ls), > > void *userData); > > @@ -2255,6 +2273,8 @@ int main(int argc, char **argv) > > goto cleanup; > > } > > > > + signal(SIGINT, remove_locks_on_signal); > > + > > and you may care more than just INT but perhaps HUP and others? SIGINT was bothering me the most, because I often kill http-push by pressing Ctrl+C. I also considered adding SIGQUIT, but decided against it because normally I press Ctrl+\ only if I want the program to quit _right now_ and Ctrl+C does not work. On the other hand, sending the signal twice will terminate http-push either way. I don't know in which situation SIGHUP would come into play. Regards, Clemens -- 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