summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/opkg/opkg/logfix.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-devtools/opkg/opkg/logfix.patch')
-rw-r--r--meta/recipes-devtools/opkg/opkg/logfix.patch23
1 files changed, 23 insertions, 0 deletions
diff --git a/meta/recipes-devtools/opkg/opkg/logfix.patch b/meta/recipes-devtools/opkg/opkg/logfix.patch
new file mode 100644
index 0000000000..da06f00bd0
--- /dev/null
+++ b/meta/recipes-devtools/opkg/opkg/logfix.patch
@@ -0,0 +1,23 @@
+Patch to remove "duplicate" bits of logs from opkg output, which
+massively simplifies do_rootfs logs. The reason is we get unflushed
+data passed to the children and duplicated.
+
+RP - 26/1/10
+
+Index: trunk/libbb/gz_open.c
+===================================================================
+--- trunk.orig/libbb/gz_open.c 2010-01-26 23:12:10.000000000 +0000
++++ trunk/libbb/gz_open.c 2010-01-26 23:12:17.000000000 +0000
+@@ -38,6 +38,12 @@
+ perror_msg("pipe");
+ return(NULL);
+ }
++
++ /* If we don't flush, we end up with two copies of anything pending,
++ one from the parent, one from the child */
++ fflush(stdout);
++ fflush(stderr);
++
+ if ((*pid = fork()) == -1) {
+ perror_msg("fork");
+ return(NULL);