ipkg - free some memory by removing temporary control & data archives after processing
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 25 Jan 2008 11:09:10 +0000 (11:09 +0000)
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Fri, 25 Jan 2008 11:09:10 +0000 (11:09 +0000)
The control and data archives can be removed after processing and
gain some memory for another use of the ramdisk or for ipkg needs.

Signed-off-by: Lubos Stanek (lubek) <lubek@lubek.name>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10246 3c298f89-4303-0410-b956-a3cf2f4a3e73

busybox/patches/525-clean_temp.patch [new file with mode: 0644]

diff --git a/busybox/patches/525-clean_temp.patch b/busybox/patches/525-clean_temp.patch
new file mode 100644 (file)
index 0000000..0c3be74
--- /dev/null
@@ -0,0 +1,35 @@
+diff -urN busybox-1.8.2.old/archival/libipkg/pkg_extract.c busybox-1.8.2.dev/archival/libipkg/pkg_extract.c
+--- busybox-1.8.2.old/archival/libipkg/pkg_extract.c   2008-01-23 22:18:44.000000000 +0100
++++ busybox-1.8.2.dev/archival/libipkg/pkg_extract.c   2008-01-23 22:20:31.000000000 +0100
+@@ -85,6 +85,7 @@
+       free(archive->buffer);
+       free(archive->accept);
+       free(archive);
++      unlink(name);
+       free(name);
+       return 0;
+@@ -114,6 +115,7 @@
+       close(archive->src_fd);
+       free(archive);
+       free(path);
++      unlink(name);
+       free(name);
+       return 0;
+@@ -138,6 +140,7 @@
+       close(archive->src_fd);
+       free(archive);
+       free(path);
++      unlink(name);
+       free(name);
+       return 0;
+@@ -218,6 +221,7 @@
+       fputs(archive->buffer, file);
+       free(archive->buffer);
+       free(archive);
++      unlink(name);
+       free(name);
+       
+       return 0;