diff options
author | David Faure <faure+bluesystems@kde.org> | 2012-12-21 16:38:19 (GMT) |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-01-14 20:44:54 (GMT) |
commit | 2e97dd401a09e4a9027dea885db7fd95e961a0c5 (patch) | |
tree | acff6664b12894ba1ec941347c73bb9d9ede4c75 /src/corelib | |
parent | 1e1486b9cf49e1bb26f44cde7f7a6667614585b0 (diff) | |
download | Qt-2e97dd401a09e4a9027dea885db7fd95e961a0c5.zip Qt-2e97dd401a09e4a9027dea885db7fd95e961a0c5.tar.gz Qt-2e97dd401a09e4a9027dea885db7fd95e961a0c5.tar.bz2 |
QUrl::fromUserInput: fix for urls without a host.
QUrl::fromUserInput("http://") was invalid, which doesn't make sense
since QUrl("http://") is valid. Same for "smb:" which is actually
even more a valid URL from a user's point of view.
Change-Id: I371ac393d61b49499edf5adbbc2a90b426fe9e5d
(cherry-picked from qt5 commit 8b2728ec382565c5bd57148600e34740a3c3fe52)
Reviewed-by: David Faure (KDE) <faure@kde.org>
Diffstat (limited to 'src/corelib')
-rw-r--r-- | src/corelib/io/qurl.cpp | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/src/corelib/io/qurl.cpp b/src/corelib/io/qurl.cpp index 4b0bc39..551a990 100644 --- a/src/corelib/io/qurl.cpp +++ b/src/corelib/io/qurl.cpp @@ -6684,12 +6684,11 @@ QUrl QUrl::fromUserInput(const QString &userInput) QUrl url = QUrl::fromEncoded(trimmedString.toUtf8(), QUrl::TolerantMode); QUrl urlPrepended = QUrl::fromEncoded("http://" + trimmedString.toUtf8(), QUrl::TolerantMode); - // Check the most common case of a valid url with scheme and host + // Check the most common case of a valid url with a scheme // We check if the port would be valid by adding the scheme to handle the case host:port // where the host would be interpretted as the scheme if (url.isValid() && !url.scheme().isEmpty() - && (!url.host().isEmpty() || !url.path().isEmpty()) && urlPrepended.port() == -1) return url; |