bug fix in ::dn not restoring original sighandler