summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-01-25 11:09:10 +0000
committernbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>2008-01-25 11:09:10 +0000
commit9690839b1f18469d59399c3e0f7c5be562bb5f2d (patch)
tree2f82b94c3197bfa133dbaef51e774f7295d8a938
parentf90cb20b9a2c4e4c5d8f3af569264726fb6ddcf8 (diff)
ipkg - free some memory by removing temporary control & data archives after processing
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
-rw-r--r--busybox/patches/525-clean_temp.patch35
1 files changed, 35 insertions, 0 deletions
diff --git a/busybox/patches/525-clean_temp.patch b/busybox/patches/525-clean_temp.patch
new file mode 100644
index 0000000000..0c3be747cf
--- /dev/null
+++ b/busybox/patches/525-clean_temp.patch
@@ -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;