opkg: use vfork on gz_open by default (FS#120)
authorFelix Fietkau <nbd@nbd.name>
Sun, 28 Aug 2016 12:18:14 +0000 (14:18 +0200)
committerFelix Fietkau <nbd@nbd.name>
Sun, 28 Aug 2016 12:18:54 +0000 (14:18 +0200)
Reduces memory consumption and binary size

Signed-off-by: Felix Fietkau <nbd@nbd.name>
package/system/opkg/patches/280-use-vfork.patch [new file with mode: 0644]

diff --git a/package/system/opkg/patches/280-use-vfork.patch b/package/system/opkg/patches/280-use-vfork.patch
new file mode 100644 (file)
index 0000000..1c46f52
--- /dev/null
@@ -0,0 +1,20 @@
+--- a/libbb/gz_open.c
++++ b/libbb/gz_open.c
+@@ -29,7 +29,7 @@
+ #include <unistd.h>
+ #include "libbb.h"
+-static int gz_use_vfork;
++static const int gz_use_vfork = 1;
+ FILE *
+ gz_open(FILE *compressed_file, int *pid)
+@@ -38,8 +38,6 @@ gz_open(FILE *compressed_file, int *pid)
+       off_t floc;
+       int cfile = -1;
+-      gz_use_vfork = (getenv("OPKG_USE_VFORK") != NULL);
+-
+       if (gz_use_vfork) {
+               /* Create a new file descriptor for the input stream
+                * (it *must* be associated with a file), and lseek()