Skip to content

Commit

Permalink
Fix for "Break statement not working correctly".
Browse files Browse the repository at this point in the history
Issue #163
  • Loading branch information
zik.saleeba committed Mar 16, 2013
1 parent 230e943 commit 155291e
Showing 1 changed file with 3 additions and 2 deletions.
5 changes: 3 additions & 2 deletions parse.c
Original file line number Diff line number Diff line change
Expand Up @@ -393,7 +393,8 @@ void ParseFor(struct ParseState *Parser)
struct ParseState PreIncrement;
struct ParseState PreStatement;
struct ParseState After;

enum RunMode OldMode = Parser->Mode;

if (LexGetToken(Parser, NULL, TRUE) != TokenOpenBracket)
ProgramFail(Parser, "'(' expected");

Expand Down Expand Up @@ -445,7 +446,7 @@ void ParseFor(struct ParseState *Parser)
}
}

if (Parser->Mode == RunModeBreak)
if (Parser->Mode == RunModeBreak && OldMode == RunModeRun)
Parser->Mode = RunModeRun;

ParserCopyPos(Parser, &After);
Expand Down

0 comments on commit 155291e

Please sign in to comment.