diff options
author | Kai Koehne <kai.koehne@nokia.com> | 2011-01-05 14:44:52 +0100 |
---|---|---|
committer | Kai Koehne <kai.koehne@nokia.com> | 2011-01-05 14:49:39 +0100 |
commit | 2c4ae8c1b855021cdf92b8f3604a30ce07899b5b (patch) | |
tree | 517bfb028b6b7691853872bf3ce285ae7ef0261c /src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp | |
parent | e624c3fbe639e402468303ced991f99c37ff884f (diff) | |
download | qt-creator-2c4ae8c1b855021cdf92b8f3604a30ce07899b5b.tar.gz |
QmlProject: Fix compilation on cygwin
Move use of windows API to winutils.
Diffstat (limited to 'src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp')
-rw-r--r-- | src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp | 24 |
1 files changed, 10 insertions, 14 deletions
diff --git a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp index 9f5a4687f9..6438bbd277 100644 --- a/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp +++ b/src/plugins/qmlprojectmanager/qmlprojectrunconfiguration.cpp @@ -46,7 +46,7 @@ #include <qt4projectmanager/qt4projectmanagerconstants.h> #ifdef Q_OS_WIN32 -#include <Windows.h> +#include <utils/winutils.h> #endif using Core::EditorManager; @@ -69,7 +69,7 @@ QmlProjectRunConfiguration::QmlProjectRunConfiguration(QmlProjectTarget *parent) { ctor(); updateQtVersions(); -} +} QmlProjectRunConfiguration::QmlProjectRunConfiguration(QmlProjectTarget *parent, QmlProjectRunConfiguration *source) : @@ -186,18 +186,14 @@ QString QmlProjectRunConfiguration::canonicalCapsPath(const QString &fileName) QString canonicalPath = QFileInfo(fileName).canonicalFilePath(); #if defined(Q_OS_WIN32) - wchar_t *buffer = 0; - do { - long length = ::GetLongPathName((wchar_t*)fileName.utf16(), NULL, 0); - if (!length) - break; - buffer = new wchar_t[length]; - DWORD rv = ::GetLongPathName((wchar_t*)fileName.utf16(), buffer, length); - if (!rv) - break; - canonicalPath = QString((QChar*)buffer); - } while (false); - delete buffer; + QString error; + // don't know whether the shortpath step is really needed, + // but we do this in QtDeclarative too. + QString path = Utils::getShortPathName(canonicalPath, &error); + if (!path.isEmpty()) + path = Utils::getLongPathName(canonicalPath, &error); + if (!path.isEmpty()) + canonicalPath = path; #endif return canonicalPath; |