diff options
-rw-r--r-- | src/analysis/statement.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/analysis/statement.cpp b/src/analysis/statement.cpp index 39c03d2..611ad26 100644 --- a/src/analysis/statement.cpp +++ b/src/analysis/statement.cpp @@ -234,6 +234,8 @@ void analyseWhileStmt(WhileStmtNode *node, const WalkItem &wi, WalkItem &wo) else if (bodyNode) { addNeedCheckNullVars2(wo2, wo); + WalkItem wo2Saved = wo2; + WalkItem wcoSaved = wco; const Command oldCommand = command; disableCommand(DetectUseless); @@ -245,7 +247,7 @@ void analyseWhileStmt(WhileStmtNode *node, const WalkItem &wi, WalkItem &wo) command = oldCommand; Log::dumpWI(node, "wco2 ", wco); - removeNeedCheckNullVars2(wco, wo2, wo); + removeNeedCheckNullVars2(wcoSaved, wo2Saved, wo); } wo.isReturned = false; |