From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from euclid.skiles.gatech.edu (list@euclid.skiles.gatech.edu [130.207.146.50]) by melb.werple.net.au (8.7.5/8.7.3/2) with ESMTP id FAA11884 for ; Wed, 17 Jul 1996 05:50:55 +1000 (EST) Received: (from list@localhost) by euclid.skiles.gatech.edu (8.7.3/8.7.3) id PAA06626; Tue, 16 Jul 1996 15:45:22 -0400 (EDT) Resent-Date: Tue, 16 Jul 1996 15:45:22 -0400 (EDT) From: Zefram Message-Id: <28094.199607161944@stone.dcs.warwick.ac.uk> Subject: new lexing bug, and possible fix To: zsh-workers@math.gatech.edu (Z Shell workers mailing list) Date: Tue, 16 Jul 1996 20:44:18 +0100 (BST) X-Patch: 111 X-Loop: zefram@dcs.warwick.ac.uk X-Stardate: [-31]7819.11 X-US-Congress: Moronic fuckers MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Resent-Message-ID: <"EGvxL.0.Td1.H5_wn"@euclid> Resent-From: zsh-workers@math.gatech.edu X-Mailing-List: archive/latest/1671 X-Loop: zsh-workers@math.gatech.edu Precedence: list Resent-Sender: zsh-workers-request@math.gatech.edu -----BEGIN PGP SIGNED MESSAGE----- zsh -fc 'echo ${' Index: Src/lex.c =================================================================== RCS file: /home/zefram/usr/cvsroot/zsh/Src/lex.c,v retrieving revision 1.7 diff -c -r1.7 lex.c *** lex.c 1996/07/16 14:26:55 1.7 --- lex.c 1996/07/16 18:20:32 *************** *** 715,721 **** } c = Outpar; } else { ! if (e == '{') { add(c); c = Inbrace; ++bct; --- 715,721 ---- } c = Outpar; } else { ! if (e == '{') { /*}*/ add(c); c = Inbrace; ++bct; *************** *** 768,774 **** break; case LX2_INBRACE: if (isset(IGNOREBRACES) || sub) ! c = '{'; else { if (in_brace_param) cmdpush(CS_BRACE); --- 768,774 ---- break; case LX2_INBRACE: if (isset(IGNOREBRACES) || sub) ! c = '{'; /*}*/ else { if (in_brace_param) cmdpush(CS_BRACE); *************** *** 964,969 **** --- 964,972 ---- brk: hungetc(c); *bptr = '\0'; + if (in_brace_param) + while(bct-- >= in_brace_param) + cmdpop(); DPUTS(cmdsp != ocmdsp, "BUG: gettok: cmdstack changed."); return peek; } -----BEGIN PGP SIGNATURE----- Version: 2.6.2 iQCVAwUBMeveTnD/+HJTpU/hAQG0bQP/QWxzgTrcGS9jnaqeK5FC73epXRJQNXE1 5z84WhUpSxfuZ8Eoiyo6eo6jL4ZUZ2opaMUvjZabPZj/TIC3EOjT1xUksLdN8Na8 FZsFTZUNEP94cDh51MbZMQ4s7/nspZiAB8F/aY9lh0dF6x25uUcNTIMMsbBleIKV owzhlSYeevs= =cw0M -----END PGP SIGNATURE-----