From 81c8e63d1ff27295cdeef12d6564db36822e8745 Mon Sep 17 00:00:00 2001 From: nyamatongwe Date: Wed, 1 Sep 2010 13:03:24 +1000 Subject: Fix division by 0 crash with preprocessor expressions like #if 1 / 0 or #if 1 // --- lexers/LexCPP.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lexers/LexCPP.cxx b/lexers/LexCPP.cxx index 2028c66a9..6d01fb44b 100644 --- a/lexers/LexCPP.cxx +++ b/lexers/LexCPP.cxx @@ -977,9 +977,9 @@ void LexerCPP::EvaluateTokens(std::vector &tokens) { else if (tokens[k+1] == "*") result = valA * valB; else if (tokens[k+1] == "/") - result = valA / valB; + result = valA / (valB ? valB : 1); else if (tokens[k+1] == "%") - result = valA % valB; + result = valA % (valB ? valB : 1); else if (tokens[k+1] == "<") result = valA < valB; else if (tokens[k+1] == "<=") -- cgit v1.2.3