From 34a8a57d81ce73beef95ff2865226fdc3e0134ed Mon Sep 17 00:00:00 2001
From: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Date: Thu, 2 Sep 2010 17:55:42 +0200
Subject: [PATCH] fix crash when no command line options are passed to qmake

the root cause is in the API of parsedProFile(): it discerns
isNull() and isEmpty(), which is of course a time bomb.
but in this case the right solution is not trying to parse
the empty string in the first place.
---
 src/shared/proparser/profileevaluator.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/shared/proparser/profileevaluator.cpp b/src/shared/proparser/profileevaluator.cpp
index bed1b6a5866..216a4478821 100644
--- a/src/shared/proparser/profileevaluator.cpp
+++ b/src/shared/proparser/profileevaluator.cpp
@@ -1273,6 +1273,7 @@ ProFileEvaluator::Private::VisitReturn ProFileEvaluator::Private::visitProFile(
             if (tgt.isEmpty())
                 tgt.append(ProString(QFileInfo(pro->fileName()).baseName(), NoHash));
 
+        if (!m_cmdArgs.isEmpty()) {
             if (ProFile *pro = m_parser->parsedProFile(
                     fL1S("(command line)"), false, m_cmdArgs.join(fL1S("\n")))) {
                 m_locationStack.push(m_current);
@@ -1280,6 +1281,7 @@ ProFileEvaluator::Private::VisitReturn ProFileEvaluator::Private::visitProFile(
                 m_current = m_locationStack.pop();
                 pro->deref();
             }
+        }
     }
 
     visitProBlock(pro, pro->tokPtr());
-- 
GitLab