From ca800a022a5b02207aea716bfddee00e4c65369c Mon Sep 17 00:00:00 2001 From: mattias Date: Tue, 28 Sep 2010 19:17:03 +0000 Subject: [PATCH] codetools: fixed skipping else git-svn-id: trunk@27515 - --- components/codetools/codetoolscfgscript.pas | 4 ++-- components/codetools/examples/runcfgscript.lpr | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/components/codetools/codetoolscfgscript.pas b/components/codetools/codetoolscfgscript.pas index 4a52995b17..d629929485 100644 --- a/components/codetools/codetoolscfgscript.pas +++ b/components/codetools/codetoolscfgscript.pas @@ -1416,11 +1416,11 @@ begin AddError('then expected, but '+GetAtomOrNothing+' found'); // then statement ReadRawNextPascalAtom(Src,AtomStart); - RunStatement(not ExprIsTrue); + RunStatement(Skip or not ExprIsTrue); if CompareIdentifiers(AtomStart,'else')=0 then begin // else statement ReadRawNextPascalAtom(Src,AtomStart); - RunStatement(ExprIsTrue); + RunStatement(Skip or ExprIsTrue); end; // clean up stack while FStack.Top>StartTop do FStack.Pop; diff --git a/components/codetools/examples/runcfgscript.lpr b/components/codetools/examples/runcfgscript.lpr index d9ec316f98..abd8c3cb55 100644 --- a/components/codetools/examples/runcfgscript.lpr +++ b/components/codetools/examples/runcfgscript.lpr @@ -68,6 +68,7 @@ begin end else begin writeln('Result="',Engine.Variables['Result'],'"'); end; + Engine.Variables.WriteDebugReport('Variables'); except on E: Exception do begin writeln(E.Message);