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

Bug#555469: libc6 postinst calls invoke-rc.d with bogus "-query" argument



Package: libc6
Version: 2.10.1-6
Severity: grave
Tags: patch

The libc6 postinst calls invoke-rc.d with the argument "-query" which,
given the code around it was probably intended to be "--query". However,
that will cause the postinst to abort since -e is in effect on the shell.

The following patch fixes it so that it does what I think was intended:

--- /tmp/libc6.postinst	2009-11-09 21:41:12.703428816 +0100
+++ /var/lib/dpkg/info/libc6.postinst	2009-11-09 21:33:48.467429571 +0100
@@ -163,12 +163,14 @@
 	    	if [ -x "`which invoke-rc.d 2>/dev/null`" ]; then
 		    # Should be "if invoke-rc.d ${service} status; then", but
 		    # it is not yet supported by all scripts
-		    invoke-rc.d -query ${service} start ; status=$?
+                    set +e
+		    invoke-rc.d --query ${service} start ; status=$?
 		    if [ "$status" = "104" ] ; then
 	    	    	services="$service $services"
 	    	    else
 	    	    	echo "WARNING: init script for $service not found."
 	    	    fi
+                    set -e
 	    	else
 	    	    if [ -f /usr/share/file-rc/rc ] || [ -f /usr/lib/file-rc/rc ] && [ -f /etc/runlevel.conf ]; then
 	    	    	idl=$(filerc $rl $service)



Reply to: