summaryrefslogtreecommitdiffstats
path: root/src/corelib/kernel/qcoreapplication.cpp
diff options
context:
space:
mode:
authorDavid Faure <faure@kde.org>2011-10-21 20:57:31 +0200
committerQt by Nokia <qt-info@nokia.com>2011-10-23 00:56:51 +0200
commit4b72c3f4347bfb8493e877d26f172f2e18c69a83 (patch)
tree636fc5ca4a92678ae1c11b0d48483b23b1d1127f /src/corelib/kernel/qcoreapplication.cpp
parentfa0ad643a6f0018544197e4eb80e8cf2cbf700cf (diff)
Add QStandardPaths::findExecutable.
Change-Id: If30a83622e2ac5af48e47a38b8f70fce73044d74 Reviewed-by: Thiago Macieira (Intel) <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/kernel/qcoreapplication.cpp')
-rw-r--r--src/corelib/kernel/qcoreapplication.cpp15
1 files changed, 2 insertions, 13 deletions
diff --git a/src/corelib/kernel/qcoreapplication.cpp b/src/corelib/kernel/qcoreapplication.cpp
index 9acf1f22c3..24d0ceef56 100644
--- a/src/corelib/kernel/qcoreapplication.cpp
+++ b/src/corelib/kernel/qcoreapplication.cpp
@@ -53,6 +53,7 @@
#include <qfileinfo.h>
#include <qhash.h>
#include <private/qprocess_p.h>
+#include <qstandardpaths.h>
#include <qtextcodec.h>
#include <qthread.h>
#include <qthreadpool.h>
@@ -2019,19 +2020,7 @@ QString QCoreApplication::applicationFilePath()
Otherwise, the file path has to be determined using the
PATH environment variable.
*/
- QByteArray pEnv = qgetenv("PATH");
- QDir currentDir = QDir::current();
- QStringList paths = QString::fromLocal8Bit(pEnv.constData()).split(QLatin1Char(':'));
- for (QStringList::const_iterator p = paths.constBegin(); p != paths.constEnd(); ++p) {
- if ((*p).isEmpty())
- continue;
- QString candidate = currentDir.absoluteFilePath(*p + QLatin1Char('/') + argv0);
- QFileInfo candidate_fi(candidate);
- if (candidate_fi.exists() && !candidate_fi.isDir()) {
- absPath = candidate;
- break;
- }
- }
+ absPath = QStandardPaths::findExecutable(argv0);
}
absPath = QDir::cleanPath(absPath);