r3746 - in glibc-package/trunk/debian: . debhelper.in
Author: aurel32
Date: 2009-08-09 19:15:04 +0000 (Sun, 09 Aug 2009)
New Revision: 3746
Modified:
glibc-package/trunk/debian/changelog
glibc-package/trunk/debian/debhelper.in/libc.preinst
Log:
* Don't access dpkg files directly in libc6.preinst.
Modified: glibc-package/trunk/debian/changelog
===================================================================
--- glibc-package/trunk/debian/changelog 2009-08-09 19:13:31 UTC (rev 3745)
+++ glibc-package/trunk/debian/changelog 2009-08-09 19:15:04 UTC (rev 3746)
@@ -6,6 +6,7 @@
using the "new" dpkg-dev features. Clean-out some very old entries.
* Recommends libc6-i686 on amd64 and libc0.1-i686 on kfreebsd-amd64
(Closes: bug#455603).
+ * Don't access dpkg files directly in libc6.preinst.
[ Petr Salinger ]
* kfreebsd/local-sysdeps.diff: update to revision 2696 (from glibc-bsd).
Modified: glibc-package/trunk/debian/debhelper.in/libc.preinst
===================================================================
--- glibc-package/trunk/debian/debhelper.in/libc.preinst 2009-08-09 19:13:31 UTC (rev 3745)
+++ glibc-package/trunk/debian/debhelper.in/libc.preinst 2009-08-09 19:15:04 UTC (rev 3746)
@@ -6,19 +6,21 @@
preversion=$2
rm_conffile() {
- CONFFILE="$1"
+ local PKGNAME="$1"
+ local CONFFILE="$2"
- if [ -e "$CONFFILE" ]; then
- md5sum="`md5sum \"$CONFFILE\" | sed -e \"s/ .*//\"`"
- old_md5sum="`sed -n -e \"/^Conffiles:/,/^[^ ]/{\\\\' $CONFFILE'{s/.* //;p}}\" /var/lib/dpkg/status`"
- if [ "$md5sum" != "$old_md5sum" ]; then
- echo "Obsolete conffile $CONFFILE has been modified by you."
- echo "Saving as $CONFFILE.dpkg-bak ..."
- mv -f "$CONFFILE" "$CONFFILE".dpkg-bak
- else
- echo "Removing obsolete conffile $CONFFILE ..."
- rm -f "$CONFFILE"
- fi
+ [ -e "$CONFFILE" ] || return 0
+
+ local md5sum="$(md5sum $CONFFILE | sed -e 's/ .*//')"
+ local old_md5sum="$(dpkg-query -W -f='${Conffiles}' $PKGNAME | \
+ sed -n -e "\' $CONFFILE ' { s/ obsolete$//; s/.* //; p }")"
+ if [ "$md5sum" != "$old_md5sum" ]; then
+ echo "Obsolete conffile $CONFFILE has been modified by you."
+ echo "Saving as $CONFFILE.dpkg-bak ..."
+ mv -f "$CONFFILE" "$CONFFILE".dpkg-bak
+ else
+ echo "Removing obsolete conffile $CONFFILE ..."
+ rm -f "$CONFFILE"
fi
}
@@ -49,7 +51,7 @@
then
# Remove old /etc/init.d/glibc.sh init script
if dpkg --compare-versions "$preversion" le "2.9-22"; then
- rm_conffile "/etc/init.d/glibc.sh"
+ rm_conffile LIBC "/etc/init.d/glibc.sh"
update-rc.d glibc.sh remove >/dev/null
fi
Reply to: