opkg: fix use-after-free with duplicate packages on the command line
[openwrt/staging/yousong.git] / package / system / opkg / patches / 270-fix-use-after-free.patch
diff --git a/package/system/opkg/patches/270-fix-use-after-free.patch b/package/system/opkg/patches/270-fix-use-after-free.patch
new file mode 100644 (file)
index 0000000..96e24b9
--- /dev/null
@@ -0,0 +1,11 @@
+--- a/libopkg/opkg_download.c
++++ b/libopkg/opkg_download.c
+@@ -335,7 +335,7 @@ opkg_prepare_url_for_install(const char
+      hash_insert_pkg(pkg, 1);
+      if (namep) {
+-        *namep = pkg->name;
++        *namep = xstrdup(pkg->name);
+      }
+      return 0;
+ }