From: Jonas Gorski Date: Tue, 19 May 2015 09:13:17 +0000 (+0000) Subject: base-files: fix default pre-/postrm for packages with a dot X-Git-Tag: reboot~3046 X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=d0af85c9a5ea546aa8f7322d52c8d256c2895902;p=openwrt%2Fstaging%2Fjogo.git base-files: fix default pre-/postrm for packages with a dot Instead of stripping everything after the first dot, strip everything after the last dot. This fixes pre-/postrm actions for packages with a dot in their name, like libusb-1.0. Fixes #19668. Signed-off-by: Jonas Gorski SVN-Revision: 45702 --- diff --git a/package/base-files/files/lib/functions.sh b/package/base-files/files/lib/functions.sh index 72d954db3c..8d045fa642 100755 --- a/package/base-files/files/lib/functions.sh +++ b/package/base-files/files/lib/functions.sh @@ -165,7 +165,7 @@ insert_modules() { default_prerm() { local name - name=$(echo $(basename $1) | cut -d. -f1) + name=$(basename ${1%.*}) [ -f /usr/lib/opkg/info/${name}.prerm-pkg ] && . /usr/lib/opkg/info/${name}.prerm-pkg for i in `cat /usr/lib/opkg/info/${name}.list | grep "^/etc/init.d/"`; do $i disable @@ -175,7 +175,7 @@ default_prerm() { default_postinst() { local pkgname rusers - pkgname=$(echo $(basename $1) | cut -d. -f1) + pkgname=$(basename ${1%.*}) rusers=$(grep "Require-User:" ${IPKG_INSTROOT}/usr/lib/opkg/info/${pkgname}.control) [ -n "$rusers" ] && { local user group uid gid