summaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorDenis Vlasenko2008-06-09 16:02:39 +0000
committerDenis Vlasenko2008-06-09 16:02:39 +0000
commit3fe4f986a055d0bc942dcda0c2fea3ef68e341d7 (patch)
treeedb986f2879dd8c71d56b31114c84bec043d2197 /shell
parent98a6f56d495698a31909afee0acf36f7c9f1d5ee (diff)
downloadbusybox-3fe4f986a055d0bc942dcda0c2fea3ef68e341d7.zip
busybox-3fe4f986a055d0bc942dcda0c2fea3ef68e341d7.tar.gz
less: fix a case when regexp matches ""
hush: remove wrong comment, expand another one
Diffstat (limited to 'shell')
-rw-r--r--shell/hush.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/shell/hush.c b/shell/hush.c
index 9e574c9..b80468f 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -3218,7 +3218,6 @@ static int redirect_opt_num(o_string *o)
}
#if ENABLE_HUSH_TICK
-/* NB: currently disabled on NOMMU */
static FILE *generate_stream_from_list(struct pipe *head)
{
FILE *pf;
@@ -3229,6 +3228,10 @@ static FILE *generate_stream_from_list(struct pipe *head)
/* By using vfork here, we suspend parent till child exits or execs.
* If child will not do it before it fills the pipe, it can block forever
* in write(STDOUT_FILENO), and parent (shell) will be also stuck.
+ * Try this script:
+ * yes "0123456789012345678901234567890" | dd bs=32 count=64k >TESTFILE
+ * huge=`cat TESTFILE` # will block here forever
+ * echo OK
*/
pid = BB_MMU ? fork() : vfork();
if (pid < 0)