[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#36426: dpkg: install-info fails when $? == SIGPIPE



Package: dpkg
Version: 1.4.1.1

When reading from a pipe install-info checks for the shell-translated
equivalent of SIGPIPE (128 + SIGPIPE, which as a wait status is 0x8D00),
but it doesn't check for an actual SIGPIPE itself (as a wait status,
a plain SIGPIPE, which is 0x0D).  I don't know why this hasn't come up
before, but this morning I had some failures because of it.

    # dpkg --pending --configure
    Setting up xaos (3.0-10) ...
    install-info: read gzip -d </usr/info/xaos.info.gz |: 13
    dpkg: error processing xaos (--configure):
     subprocess post-installation script returned error exit status 13
    Setting up glibc-doc (2.1.1-0.2) ...
    install-info: read gzip -d </usr/share/info/libc.info.gz |: 13
    dpkg: error processing glibc-doc (--configure):
     subprocess post-installation script returned error exit status 13
    Errors were encountered while processing:
     xaos
     glibc-doc

Here is a patch.

--- install-info.~1~	Sun Jan 31 19:21:22 1999
+++ install-info	Tue Apr 20 10:53:52 1999
@@ -348,7 +348,7 @@
 }
 
 sub checkpipe {
-    return if !$pipeit || !$? || $?==0x8D00;
+    return if !$pipeit || !$? || $?==0x8D00 || $?==0x0D;
     die "$name: read $filename: $?\n";
 }
 

-- System Information
Debian Release: potato
Kernel Version: Linux jones 2.2.5-ac3-jones.1 #1 Fri Apr 2 13:28:07 EST 1999 i686 unknown

Versions of the packages dpkg depends on:
ii  libc6           2.1.1-0.2      GNU C Library: shared libraries
ii  libncurses4     4.2-3.2        Shared libraries for terminal handling
ii  libstdc++2.9    2.91.61-1      The GNU stdc++ library (egcs version)


Reply to: