From 046efb811b6e6ff0c3e349c1c8262ef6ed49313e Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 3 Jul 2013 16:54:44 +0200 Subject: [PATCH] don't crash if builddir is suffix of sourcedir (or vice-versa) Change-Id: I97a6e2ebd51350cbf39c86efa5c26a376c49da95 Reviewed-by: Joerg Bornemann (cherry picked from qtbase/b30273ec4a4ce65794fd402c6e3eb21de7bae1b9) --- src/linguist/shared/qmakeglobals.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/linguist/shared/qmakeglobals.cpp b/src/linguist/shared/qmakeglobals.cpp index dbe6944..48c4dfc 100644 --- a/src/linguist/shared/qmakeglobals.cpp +++ b/src/linguist/shared/qmakeglobals.cpp @@ -249,7 +249,8 @@ void QMakeGlobals::setDirectories(const QString &input_dir, const QString &outpu int srcLen = srcpath.length(); int dstLen = dstpath.length(); int lastSl = -1; - while (++lastSl, srcpath.at(--srcLen) == dstpath.at(--dstLen)) + while (++lastSl, --srcLen, --dstLen, + srcLen && dstLen && srcpath.at(srcLen) == dstpath.at(dstLen)) if (srcpath.at(srcLen) == QLatin1Char('/')) lastSl = 0; source_root = srcpath.left(srcLen + lastSl); -- 2.7.4