qt6-bb10/tests/auto/corelib/io
Thiago Macieira 0c32af08a6 Fix handling of IPv6 addresses in QUrl::fromUserInput
IPv6 addresses can start with ":", for which QDir::isAbsolute() would
always return true (QResourceFileEngine::isRelativePath() returns
constant false) and would trip the calculation for local files.

Similarly, IPv6 addresses can start with strings that look like Windows
drives: "a:", "b:", "c:", "d:", "e:" and "f:" (though not today, as
those address blocks are unassigned). Since a valid IPv6 address will
definitely require at least one more colon and Windows file names cannot
contain ':', there's no ambiguity: a valid IPv6 address is never a valid
file on Windows.

This resolves the ambiguity in favor of IPv6 for Unix filenames (which
can contain a colon) and in case of an URL containing scheme, relative
path and no authority ("dead:beef::" for example could have been parsed
as scheme() == "dead" and path() == "beef::").

Task-number: QTBUG-41089
Change-Id: Id9119af1acf8a75a786519af3b48b4ca3dbf3719
Reviewed-by: David Faure <david.faure@kdab.com>
2014-09-28 01:28:29 +02:00
..
largefile Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qabstractfileengine Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qbuffer Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qdatastream Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qdataurl Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qdebug Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qdir Refactored qt_normalizePathSegments 2014-09-25 16:16:59 +02:00
qdiriterator Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qfile Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qfileinfo Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qfileselector Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qfilesystementry Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qfilesystemwatcher Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qiodevice Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qipaddress Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qlockfile Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qloggingcategory Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qloggingregistry Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qnodebug Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qprocess Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qprocess-noapplication Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qprocessenvironment Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qresourceengine Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qsavefile Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qsettings Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qstandardpaths Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qstorageinfo Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qtemporarydir Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qtemporaryfile Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qtextstream Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qurl Fix handling of IPv6 addresses in QUrl::fromUserInput 2014-09-28 01:28:29 +02:00
qurlinternal Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qurlquery Update license headers and add new license files 2014-09-24 12:26:19 +02:00
qwinoverlappedionotifier Update license headers and add new license files 2014-09-24 12:26:19 +02:00
io.pro Add the QStorageInfo class 2014-08-13 16:09:58 +02:00