aboutsummaryrefslogtreecommitdiff
path: root/shell
diff options
context:
space:
mode:
authorDenis Vlasenko <vda.linux@googlemail.com>2008-11-28 04:01:03 +0000
committerDenis Vlasenko <vda.linux@googlemail.com>2008-11-28 04:01:03 +0000
commite27dafd338b204407092af37dbafdbebb87859a1 (patch)
tree6c842eb390826b15f959ce7821fdb91fe51e50cd /shell
parent7b2294edff76ae975a61d35b1fd0079d907f34f8 (diff)
downloadbusybox-w32-e27dafd338b204407092af37dbafdbebb87859a1.tar.gz
busybox-w32-e27dafd338b204407092af37dbafdbebb87859a1.tar.bz2
busybox-w32-e27dafd338b204407092af37dbafdbebb87859a1.zip
ash: add FIXME
Diffstat (limited to 'shell')
-rw-r--r--shell/ash.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/shell/ash.c b/shell/ash.c
index 295418c04..9eff1b38e 100644
--- a/shell/ash.c
+++ b/shell/ash.c
@@ -9156,6 +9156,11 @@ popstring(void)
9156 INT_ON; 9156 INT_ON;
9157} 9157}
9158 9158
9159//FIXME: BASH_COMPAT with "...&" does TWO pungetc():
9160//it peeks whether it is &>, and then pushes back both chars.
9161//This function needs to save last *next_to_pgetc to buf[0]
9162//to make two pungetc() reliable. Currently,
9163// pgetc (out of buf: does preadfd), pgetc, pungetc, pungetc won't work...
9159static int 9164static int
9160preadfd(void) 9165preadfd(void)
9161{ 9166{
@@ -9251,9 +9256,9 @@ preadbuffer(void)
9251 * "pgetc" needs refilling. 9256 * "pgetc" needs refilling.
9252 */ 9257 */
9253 9258
9254 /* -90 is -BIGNUM. Below we use -99 to mark "EOF on read", 9259 /* -90 is our -BIGNUM. Below we use -99 to mark "EOF on read",
9255 * pungetc() may increment it a few times. 9260 * pungetc() may increment it a few times.
9256 * Assuming it won't increment it to 0. 9261 * Assuming it won't increment it to less than -90.
9257 */ 9262 */
9258 if (g_parsefile->left_in_line < -90 || g_parsefile->buf == NULL) { 9263 if (g_parsefile->left_in_line < -90 || g_parsefile->buf == NULL) {
9259 pgetc_debug("preadbuffer PEOF1"); 9264 pgetc_debug("preadbuffer PEOF1");