From 6e6b50f541a7620c78ba0b3ac7c44652a3dcaefa Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Wed, 3 Dec 2014 22:03:17 +0100 Subject: fix relative path resolution inconsistency in qmake properties suppose we queried QT_INSTALL_DOCS/get. if no [EffectivePaths] existed, we'd try [Paths]. if that didn't exist, either, we'd use the built-in, which is relative. so we'd query QT_INSTALL_PREFIX ... without the /get, which is technically wrong. this doesn't currently matter, as all groups have the same built-in defaults anyway, but it may (hint hint) matter later on. Change-Id: I5a3746e80ca1bfbf2f37db3604cc351bddeacd94 Reviewed-by: Joerg Bornemann Reviewed-by: Oswald Buddenhagen --- src/corelib/global/qlibraryinfo.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/corelib/global') diff --git a/src/corelib/global/qlibraryinfo.cpp b/src/corelib/global/qlibraryinfo.cpp index b74c29399b..ea8c201acf 100644 --- a/src/corelib/global/qlibraryinfo.cpp +++ b/src/corelib/global/qlibraryinfo.cpp @@ -404,11 +404,13 @@ QLibraryInfo::rawLocation(LibraryLocation loc, PathGroup group) // FinalPaths. For FinalPaths, use qt.conf if present and contains not only // [EffectivePaths], otherwise fall back to builtins. // EffectiveSourcePaths falls back to EffectivePaths. + PathGroup orig_group = group; if (!QLibraryInfoPrivate::haveGroup(group) && !(group == EffectiveSourcePaths && (group = EffectivePaths, QLibraryInfoPrivate::haveGroup(group))) && !(group == EffectivePaths - && (group = FinalPaths, QLibraryInfoPrivate::haveGroup(group)))) + && (group = FinalPaths, QLibraryInfoPrivate::haveGroup(group))) + && (group = orig_group, true)) #elif !defined(QT_NO_SETTINGS) if (!QLibraryInfoPrivate::configuration()) #endif -- cgit v1.2.3