I think he is asking why the second SIGHUP handler is installed at all. Shouldn't the first one handle all cases, especially since the localized one is identical to the inherited one. I can understand if you got to a point where you wanted to assign different behavior in the second handler, but in the above case it doesn't really make sense to me either.