qt5base-lts/tests/auto/corelib
Thiago Macieira f62768d046 QUrl: re-fix the setPath("//path") case leading to scheme://path
Commits aba336c2b4 (in Qt 5.2) and
aba336c2b4 (in 5.6) both tried to deal
with this problem, with different levels of success. This is the third
attempt (and hopefully the charm).

Instead of modifying the path that the user provides, go straight ahead
and declare it invalid. This is supported by RFC 3986, which declares
this expansion impossible:

   relative-part = "//" authority path-abempty
                 / path-absolute
                 / path-noscheme
                 / path-empty
   path-abempty  = *( "/" segment )
   path-absolute = "/" [ segment-nz *( "/" segment ) ]
   path-noscheme = segment-nz-nc *( "/" segment )

The "path-abempty" and "path-noscheme" cases are the two issues we
already handle. This commit adds the third one: path-absolute, which
requires that the first segment of the path be of non-zero length.

That is, it is now possible again to have http://example.com//path
constructed piece-wise, without it producing http://example.com/path.
Additionally, it catches the case of http://example.com//path parsed
from full URL then followed by setAuthority("").

Change-Id: I69f37f9304f24709a823fffd14e67a5e7212ddcd
Reviewed-by: David Faure <david.faure@kdab.com>
2017-10-06 03:49:40 +00:00
..
animation Blacklist tst_QParallelAnimationGroup::deleteChildrenWithRunningGroup() 2017-06-19 18:33:47 +00:00
codecs tst_utf8: Fix one of the overlong sequences to be what we meant 2017-03-01 12:27:17 +00:00
global qEnvironmentVariableIntValue: fix the case of a non-numeric value 2017-06-01 06:02:10 +00:00
io QUrl: re-fix the setPath("//path") case leading to scheme://path 2017-10-06 03:49:40 +00:00
itemmodels QAbstractItemModel::supportedDragActions: fix regression 2017-05-31 18:54:00 +00:00
json Merge remote-tracking branch 'origin/5.8' into 5.9 2017-03-27 10:42:08 +02:00
kernel Exclude QSystemSemaphore test with -no-feature-systemsemaphore 2017-09-18 08:56:53 +00:00
mimetypes QMimeDatabase: update freedesktop.org.xml to shared-mime-info 1.8 2017-05-08 18:04:24 +00:00
plugin QVariant: implement QByteArray ↔ QUuid conversion 2017-04-14 12:54:21 +00:00
statemachine
thread Improve performance in QThreadPool 2017-10-04 12:00:33 +00:00
tools Return "en" for QLocale::c().bcp47Name() 2017-07-26 08:22:51 +00:00
xml Build examples and tests only if their requirements are met 2017-03-22 15:55:55 +00:00
corelib.pro Add support for Apple tvOS 2016-05-17 16:11:23 +00:00