diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-08-15 13:14:05 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-08-16 04:49:20 +0000 |
commit | cc517d7cd983d9444e9690353ea7ca7ee30740ef (patch) | |
tree | fdc86ef0f43081d97bc95bd848efdd087bb251eb /src/plugins/platforms/windows/qwindowsservices.cpp | |
parent | 17d68c4fc371c32bd58d0a94ac63f0170edaf29e (diff) |
QWindowsServices::openUrl(): Don't convert URLs with fragments/queries to local files
Pass the URL instead.
Task-number: QTBUG-55300
Change-Id: I4ce9171db5c1a9e07b17911729b165c115329664
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowsservices.cpp')
-rw-r--r-- | src/plugins/platforms/windows/qwindowsservices.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/plugins/platforms/windows/qwindowsservices.cpp b/src/plugins/platforms/windows/qwindowsservices.cpp index ae63ac46ae..1d23a9d9b9 100644 --- a/src/plugins/platforms/windows/qwindowsservices.cpp +++ b/src/plugins/platforms/windows/qwindowsservices.cpp @@ -51,8 +51,9 @@ enum { debug = 0 }; static inline bool shellExecute(const QUrl &url) { #ifndef Q_OS_WINCE - const QString nativeFilePath = - url.isLocalFile() ? QDir::toNativeSeparators(url.toLocalFile()) : url.toString(QUrl::FullyEncoded); + const QString nativeFilePath = url.isLocalFile() && !url.hasFragment() && !url.hasQuery() + ? QDir::toNativeSeparators(url.toLocalFile()) + : url.toString(QUrl::FullyEncoded); const quintptr result = reinterpret_cast<quintptr>(ShellExecute(0, 0, reinterpret_cast<const wchar_t *>(nativeFilePath.utf16()), |