diff options
author | Denis Vlasenko | 2008-11-28 04:01:03 +0000 |
---|---|---|
committer | Denis Vlasenko | 2008-11-28 04:01:03 +0000 |
commit | e27dafd338b204407092af37dbafdbebb87859a1 (patch) | |
tree | 6c842eb390826b15f959ce7821fdb91fe51e50cd | |
parent | 7b2294edff76ae975a61d35b1fd0079d907f34f8 (diff) | |
download | busybox-e27dafd338b204407092af37dbafdbebb87859a1.zip busybox-e27dafd338b204407092af37dbafdbebb87859a1.tar.gz |
ash: add FIXME
-rw-r--r-- | shell/ash.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/shell/ash.c b/shell/ash.c index 295418c..9eff1b3 100644 --- a/shell/ash.c +++ b/shell/ash.c @@ -9156,6 +9156,11 @@ popstring(void) INT_ON; } +//FIXME: BASH_COMPAT with "...&" does TWO pungetc(): +//it peeks whether it is &>, and then pushes back both chars. +//This function needs to save last *next_to_pgetc to buf[0] +//to make two pungetc() reliable. Currently, +// pgetc (out of buf: does preadfd), pgetc, pungetc, pungetc won't work... static int preadfd(void) { @@ -9251,9 +9256,9 @@ preadbuffer(void) * "pgetc" needs refilling. */ - /* -90 is -BIGNUM. Below we use -99 to mark "EOF on read", + /* -90 is our -BIGNUM. Below we use -99 to mark "EOF on read", * pungetc() may increment it a few times. - * Assuming it won't increment it to 0. + * Assuming it won't increment it to less than -90. */ if (g_parsefile->left_in_line < -90 || g_parsefile->buf == NULL) { pgetc_debug("preadbuffer PEOF1"); |