opkg: fix a double free of pkg vectors when recursively removing packages due to --autoremove
SVN-Revision: 28458
This commit is contained in:
parent
2c92acb699
commit
ba0c7accd9
2 changed files with 11 additions and 1 deletions
|
@ -10,7 +10,7 @@ include $(INCLUDE_DIR)/kernel.mk
|
||||||
PKG_NAME:=opkg
|
PKG_NAME:=opkg
|
||||||
PKG_REV:=618
|
PKG_REV:=618
|
||||||
PKG_VERSION:=$(PKG_REV)
|
PKG_VERSION:=$(PKG_REV)
|
||||||
PKG_RELEASE:=1
|
PKG_RELEASE:=2
|
||||||
|
|
||||||
PKG_SOURCE_PROTO:=svn
|
PKG_SOURCE_PROTO:=svn
|
||||||
PKG_SOURCE_VERSION:=$(PKG_REV)
|
PKG_SOURCE_VERSION:=$(PKG_REV)
|
||||||
|
|
10
package/opkg/patches/030-fix-double-free.patch
Normal file
10
package/opkg/patches/030-fix-double-free.patch
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
--- a/libopkg/opkg_remove.c
|
||||||
|
+++ b/libopkg/opkg_remove.c
|
||||||
|
@@ -138,7 +138,6 @@ opkg_remove_dependent_pkgs(pkg_t *pkg, a
|
||||||
|
for (i = 0; i < dependent_pkgs->len; i++) {
|
||||||
|
err = opkg_remove_pkg(dependent_pkgs->pkgs[i],0);
|
||||||
|
if (err) {
|
||||||
|
- pkg_vec_free(dependent_pkgs);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue