[scripts] ipkg:
authorjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 1 Mar 2010 18:01:33 +0000 (18:01 +0000)
committerjow <jow@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Mon, 1 Mar 2010 18:01:33 +0000 (18:01 +0000)
strip directory entries from package file list when offline installing .ipk archives,
this prevents opkg from removing directories like /usr later on when trying to
uninstall preinstalled packages (partial fix for #6772)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@19936 3c298f89-4303-0410-b956-a3cf2f4a3e73

scripts/ipkg

index 045a3fd2a21e11ac65b5801494c486dd91700009..da6447c978675f0d1787b15af7a25d8e864d15da 100755 (executable)
@@ -875,7 +875,7 @@ diff -u $dest/$conffile $IPKG_TMP/$pkg/data/$conffile"
        rm -rf $IPKG_TMP/$pkg/data
        rmdir $IPKG_TMP/$pkg
        rm -f $info_dir/$pkg.list
-       $pkg_extract_stdout $filename ./data.tar.gz | zcat | tar tf - | sed -e 's/^\.//' > $info_dir/$pkg.list
+       $pkg_extract_stdout $filename ./data.tar.gz | zcat | tar tf - | sed -e '/\/$/d; s/^\.//' > $info_dir/$pkg.list
 
        if [ -x "$info_dir/$pkg.postinst" ]; then
                $info_dir/$pkg.postinst configure