fix a horrible memleak in ipkg (#2702)
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 29 Dec 2007 23:34:27 +0000 (23:34 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Sat, 29 Dec 2007 23:34:27 +0000 (23:34 +0000)
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10036 3c298f89-4303-0410-b956-a3cf2f4a3e73

package/busybox/patches/522-memleak.patch [new file with mode: 0644]

diff --git a/package/busybox/patches/522-memleak.patch b/package/busybox/patches/522-memleak.patch
new file mode 100644 (file)
index 0000000..1bcfb8f
--- /dev/null
@@ -0,0 +1,24 @@
+Index: busybox-1.8.2/archival/libipkg/ipkg_install.c
+===================================================================
+--- busybox-1.8.2.orig/archival/libipkg/ipkg_install.c 2007-12-30 00:02:53.577161007 +0100
++++ busybox-1.8.2/archival/libipkg/ipkg_install.c      2007-12-30 00:03:14.042327251 +0100
+@@ -500,6 +500,7 @@
+              }
+         }
+      }
++       pkg_free_installed_files(new_pkg);
+      return 0;
+ }
+Index: busybox-1.8.2/archival/libipkg/pkg.c
+===================================================================
+--- busybox-1.8.2.orig/archival/libipkg/pkg.c  2007-12-30 00:27:32.001919565 +0100
++++ busybox-1.8.2/archival/libipkg/pkg.c       2007-12-30 00:27:34.426057709 +0100
+@@ -1668,6 +1668,7 @@
+              // ipkg_message(conf, IPKG_DEBUG2, "pkg %s: file=%s\n", pkg->name, installed_file);
+              file_hash_set_file_owner(conf, installed_file, pkg);
+         }
++        pkg_free_installed_files(pkg);
+      }
+      pkg_vec_free(installed_pkgs);