fix SIGHUP handling (closes: #463030)
authorMichael Vogt <michael.vogt@ubuntu.com>
Wed, 12 Nov 2008 15:23:19 +0000 (16:23 +0100)
committerMichael Vogt <michael.vogt@ubuntu.com>
Wed, 12 Nov 2008 15:23:19 +0000 (16:23 +0100)
apt-pkg/deb/dpkgpm.cc
debian/changelog

index 36c20ad..dde1c6d 100644 (file)
@@ -778,6 +778,9 @@ bool pkgDPkgPM::Go(int OutStatusFd)
       sighandler_t old_SIGQUIT = signal(SIGQUIT,SIG_IGN);
       sighandler_t old_SIGINT = signal(SIGINT,SIG_IGN);
 
+      // ignore SIGHUP as well (debian #463030)
+      sighandler_t old_SIGHUP = signal(SIGHUP,SIG_IGN);
+
       struct   termios tt;
       struct   termios tt_out;
       struct   winsize win;
@@ -889,6 +892,7 @@ bool pkgDPkgPM::Go(int OutStatusFd)
            // Restore sig int/quit
            signal(SIGQUIT,old_SIGQUIT);
            signal(SIGINT,old_SIGINT);
+           signal(SIGINT,old_SIGHUP);
            return _error->Errno("waitpid","Couldn't wait for subprocess");
         }
 
@@ -928,6 +932,7 @@ bool pkgDPkgPM::Go(int OutStatusFd)
       // Restore sig int/quit
       signal(SIGQUIT,old_SIGQUIT);
       signal(SIGINT,old_SIGINT);
+      signal(SIGINT,old_SIGHUP);
 
       if(master >= 0) 
       {
index fdf2db4..0f20db8 100644 (file)
@@ -30,6 +30,7 @@ apt (0.7.17) UNRELEASED; urgency=low
     - add missing checks for Owner == 0 in end()
   * apt-pkg/deb/dpkgpm.cc:
     - fix potential hang when in a backgroud process group
+    - fix SIGHUP handling (closes: #463030)
   
   [ Dereck Wonnacott ]
   * apt-ftparchive might write corrupt Release files (LP: #46439)