Commit Graph

3932 Commits

Author SHA1 Message Date
Rohan Garg
e2322c885f Extend QStyle API with a SH_Splitter_OpaqueResize styleHint
Currently the default for QSplitter::opaqueResize is hard coded,
which is less than ideal. Instead this should be provided as a
style hint via QStyle so as to give a more uniform look to all
applications.

Change-Id: I5711811f7b672e36aafcd292ed320308570a0390
Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-08-20 20:09:20 +02:00
Frederik Gladhorn
cbb4a88262 Skip tst_QGraphicsProxyWidget::deleteProxyForChildWidget on Win
This tests crashes a lot lately.

Task-number: QTBUG-29684

Change-Id: I6892238dc071f050b0208dd5b4843629fa707347
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-08-20 17:59:39 +02:00
David Faure
2ccf995725 tst_qgraphicsproxywidget: skip crashing test on Mac/Windows.
Created QTBUG-33067 for tracking the issue, after some debugging.

Change-Id: Iaf5556db2e0858e40a7cf6c9dbbe7e6fd6120bac
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
2013-08-20 17:59:27 +02:00
Frederik Gladhorn
e727855476 Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev 2013-08-16 16:02:19 +02:00
Corentin Jabot
0d8ba7e349 QThreadPool - Add method clear() to remove queued QRunnable.
QThreadPool::clear() method removes all queued QRunnable.

When a large number of long-running tasks are queud in a
QThreadPool its destruction, which calls waitForDone(), can
be quite long.
QThreadPool:clear() removes (and deletes when appropriate)
all QRunnable that have yet to be started from the queue
enabling a faster interruption.

Change-Id: Ie5d6028ad3cfe7e439d1db068c8d0936ff818db9
Reviewed-by: David Faure <david.faure@kdab.com>
2013-08-16 15:43:53 +02:00
Thorbjørn Martsum
f633bc7f7f QHeaderView - reduce memory usage
Though the worst case memory usage was improved in
b800d8b94a the best case usage changed.

Since best case is the same as worst case in Qt5, we should
use as little as possible, which this patch ensures.

We reduce the memory usage from 3 to 2 ints per section - which is
half of worst case in Qt4. There seems to be no bigger cost in
performance doing that. The recalcSectionStartPos is still very fast.

This patch limits the maximum section size to (2^20) ~ 1.000.000 pixels.

This alleviates
Task-number: QTBUG-32325

Change-Id: I9b7530030a31b4e35cf1ca9e32c6b936f5ea9790
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-08-16 05:34:18 +02:00
Frederik Gladhorn
5c23199d4e Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	configure
	mkspecs/macx-xcode/Info.plist.app
	mkspecs/macx-xcode/Info.plist.lib
	qmake/doc/qmake.qdocconf
	src/corelib/global/qglobal.h
	tests/auto/other/exceptionsafety/exceptionsafety.pro
	tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp

Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
2013-08-14 09:06:31 +02:00
Christian Strømme
c8d9b17367 Fix crash in QProcess::waitForStarted() on Unix.
Invoking waitForStarted() on a QProcess before or after an unsuccessful
call to start() (e.g., with an empty command), would execute FD_SET with
an invalid file descriptor and cause the process to abort.
The bug can be reliably reproduced on OSX.

Task-number: QTBUG-32958
Change-Id: Id25b7781168489281645e21571361ca1a71d43e3
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-13 19:48:15 +02:00
Ivan Komissarov
252bad7c58 Add useful signals to QTabBar and QTabWidget
In this patch we introduce tabBarClicked and tabBarDoubleClicked to get
a finer grained information on the user interaction with the tab bar.

Done-with: kevin.ottens@kdab.com

Change-Id: I7be76a556ca09186e98f2e076fe2512d6c5e6773
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-13 19:28:31 +02:00
hjk
3c2c9649eb RCC: Make auto-test pick up the right binary
Change-Id: I30f42d40c69789eb1e292ab6bd1cf2c09d81b11b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: hjk <hjk121@nokiamail.com>
2013-08-13 17:24:49 +02:00
Sergio Ahumada
983fa9b5cb test: Skip some more qsslsocket flaky tests
Task-number: QTBUG-29941
Change-Id: Iaf1c4834ef36db284464184639a1ab00928510cf
Reviewed-by: Peter Hartmann <phartmann@blackberry.com>
2013-08-13 17:08:13 +02:00
Stephen Kelly
dfde98db52 Make the QItemSelectionModel test widgets-independent.
Change-Id: I695afe535ff291bc98f43185469a434cd9178926
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-08-13 16:34:16 +02:00
Thorbjørn Martsum
28c6841283 QMessageBox - add detailed text to manual test
Even though detailed text does not work that well, it should still
be in the manual test.

Change-Id: I051f9f0592ad9206dc42f0e9929c1be32baec832
Reviewed-by: J-P Nurmi <jpnurmi@digia.com>
2013-08-12 19:59:43 +02:00
Tor Arne Vestbø
3ca9c39610 Add auto-test for running the QEventLoop test with the GUI dispatcher
Follows a similar include-pattern as the qguieventdispatcher test.

Change-Id: Ie8669a5bc155abd6687e81526f2b95d0d19b009e
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-12 14:27:57 +02:00
Tor Arne Vestbø
126c1b4b41 Don't assume Q_OS_UNIX means we support QEventLoop::X11ExcludeTimers
A QCoreApplication may run a different event dispatcher, such as the
QEventDispatcherBlackberry, and QGuiApplications will have the GUI
dispatcher provided by the QPA plugin, such as QCocoaEventDispatcher.

Neither support X11ExcludeTimers.

Change-Id: Id5ea1c7dd74a127e13fa4d2eaa9a1bd2715a9dbb
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-12 14:27:50 +02:00
Stephen Kelly
efc43ae83d Add some debugging information to diagnose bug.
Task-number: QTBUG-32927

Change-Id: I7d0a1ad9eeb63ac0ec28483106f42109ed1a834c
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-08-12 13:51:01 +02:00
Sergio Ahumada
be5225cace test: Mark tst_QFileSystemWatcher::watchFileAndItsDirectory() as XFAIL
This is a flaky test on Windows 8 64-bit, so marking it as
XFAIL if it is expected to fail.

Task-number: QTBUG-30943
Change-Id: Idd276f80b54fcd5cf295a7e1adebcf0020eaa8ca
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2013-08-11 00:33:50 +02:00
Sergio Ahumada
d6522b70ad test: Skip some flaky tests, but only if they are expected to fail
Task-number: QTBUG-29941
Change-Id: Ieca736c26711fa292855b3281229282628dce608
Reviewed-by: Richard J. Moore <rich@kde.org>
2013-08-10 22:31:42 +02:00
Thiago Macieira
73251f22f3 Add a Qt-API style QStandardPaths::setTestModeEnabled
QStandardPaths::enableTestMode has a verb in the imperative ("enable")
as the core word in the name. That indicates an action. The function
should not have had a parameter.

Instead, add a Qt-style setXXXEnabled function.

[ChangeLog][QtCore][QStandardPaths] QStandardPaths::enableTestMode is
deprecated and is replaced by QStandardPaths::setTestModeEnabled.

Change-Id: Ib26ad72d7c635890d2cb22ae9d44cbda08a6f17c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-08-09 21:25:24 +02:00
Sergio Ahumada
0352c74755 test: Mark tst_QGlyphRun::drawMultiScriptText2() as XFAIL
This is a flaky test on OS X 10.8, so marking it as XFAIL if it is
expected to fail.

Task-number: QTBUG-32690
Change-Id: I0665c7474bb62c4c0a70e4b93cc977e3dbf1e150
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-09 16:28:34 +02:00
Sergio Ahumada
6a56fd3069 Merge branch 'release' into stable
Change-Id: I5e94c4f01564df633c9925561ebb0b553bd31a2e
2013-08-09 12:38:19 +02:00
Frederik Gladhorn
c98943b4cd Expect fail font family mismatch in the right place
This fixes 4ca4fb93f6
where the fix was right, just in the wrong place.

Change-Id: I3cde24624e3789870f1c16ccb92f78f7fc567fd5
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-08-08 17:57:05 +02:00
Friedemann Kleint
bff5100177 Add clearButton-property to QLineEdit.
Based on addAction-API.

Change-Id: Ie6c3d2d728b23a85cdd80428c92ee8208ae0a65c
Done-with: Kevin.Ottens@kdab.com
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-08 12:55:48 +02:00
Albert Astals Cid
23214c815e Revert c3f485c525
It has been discovered it changes the behavior of qdbuscpp2xml
resulting in builds of some apps breaking. Even if the
behavior is more correct, such behavior change in a stable branch is
not acceptable

Change-Id: I1d79104ebf11c3f48c84f109be2926af96cddae7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-08 09:22:29 +02:00
J-P Nurmi
737abb8a5e QComboBox: fix item activation via completer
Task-number: QTBUG-31146
Change-Id: I64291f397d80bf934152f63e629810540abf466e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-08-08 05:58:31 +02:00
Sergio Ahumada
f8ce891d22 test: Mark tst_QSettings::ctor() and tst_QSettings::rainersSyncBugOnMac(native) as XFAIL
Mark some tests as expected failures on OS X 10.8

 - tst_QSettings::ctor(native)
 - tst_QSettings::ctor(ini)
 - tst_QSettings::ctor(custom1)
 - tst_QSettings::ctor(custom2)
 - tst_QSettings::rainersSyncBugOnMac(native)

Task-number: QTBUG-32655
Change-Id: I54928d991a8ccf300b40747feaa6fda9d124781b
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-08 00:34:16 +02:00
J-P Nurmi
cffd1633b2 Fix QCompleter::activated(QModelIndex)
When falling back to the completion prefix, make sure to also pass an
invalid index to activated().

Change-Id: I6b282a01c95492466890632b77837bcc96eb038a
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
2013-08-07 18:21:23 +02:00
Thorbjørn Lund Martsum
658e42e77a QTreeView - allow users to control data in the treestructure
This patch allows to set which logical index the tree is in.

Before the tree always displayed data from the logical index 0,
but it is actually more likely that the user wants to have data
from visual index 0 (which can be done by special value -1).

There is nothing special about logical index 0, and not being
able to change the tree-data is just annoying.

Change-Id: Ib070ce93343a0d2fbac3ad5a42cb4359401ac87c
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-08-07 14:01:23 +02:00
Jędrzej Nowacki
82e976d52c Remove exception safety tests
During Qt Contributor Summit 2013 we agreed that we will not support
exception safety anymore.

http://comments.gmane.org/gmane.comp.lib.qt.devel/12004

Task-number: QTBUG-32642
Change-Id: If57917fe8af45e787e215431c94579bc86fc7683
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-07 13:36:18 +02:00
Tor Arne Vestbø
e6218ecfb5 Improve tst_QFileInfo::compare() test, but mark as QEXPECT_FAIL on Mac
As Qt still thinks that all UNIX filesystems are case sensitive, which
is not the case for eg Mac, where they might be both, as well as for
mounts of other filesystems.

Change-Id: I07b8550685bfa17ac407c20ac991dc54df040942
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-07 12:45:13 +02:00
Dario Freddi
5885b8f775 qobject: Do not destroy slot objects inside a lock
This prevents deadlocks in case the destructor re-enters.
(Example: a functor containing a QSharedPointer of a QObject)
This also fixes a leaked slot object in disconnectHelper.

Change-Id: Ia939790e3b54e64067b99540974306b4808a77f2
Reviewed-by: Olivier Goffart <ogoffart@woboq.com>
2013-08-07 12:42:45 +02:00
Bernd Weimer
bf7129af97 Fixed tst_qgl for fullscreen platforms
Replaced show() with showNormal().

Change-Id: Ia6e7f34587090de5019f9ca9cb82a44e7cf495e5
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2013-08-07 09:01:36 +02:00
Frederik Gladhorn
4ca4fb93f6 Expect fail broken font family from QFontDatabase on OS X 10.8
Change-Id: I682d58350427975a692b523095c1c38e1891663f
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@digia.com>
2013-08-07 00:31:57 +02:00
Tor Arne Vestbø
9a061a0a2c Remove unused member in QEventLoop auto-test
Change-Id: Icd6a09402c3cf14286f4ba1f8f4c99ac483ec1a3
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-06 22:04:11 +02:00
Sergio Ahumada
08d3b0165a test: Mark tst_QRawFont::fromFont() as XFAIL
Mark some tests as expected failures on OS X 10.8

 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=0, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=1, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=2, writingSystem=1)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=0)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=5)
 - tst_QRawFont::fromFont(testfont.ttf, hintingPreference=3, writingSystem=1)

Task-number: QTBUG-32654
Change-Id: I46d64852ccb751824a2eff68513389baa52c1baf
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-06 22:04:11 +02:00
Pasi Petäjäjärvi
ea14a63083 Include sockLib header to enable usage of socket functions on VxWorks
Functions normally found from <sys/socket.h> are available on VxWorks
from <sockLib.h> header.

Change-Id: I2263ec40ba9f37bc95755b633fb43d66ceb2777c
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-08-06 11:00:23 +02:00
Sergio Ahumada
79d7fd924e tst_qfilesystemmodel: increased test's permitted runtime
This test has recently timed out a few times on OS X test runs, with
no relevant changes to account for the timeout.

Task-number: QTBUG-27890
Change-Id: Ia24f7812ed2a0b3eac51847a7dacbc9f225b48b8
Reviewed-by: Simo Fält <simo.falt@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2013-08-06 08:30:20 +02:00
Friedemann Kleint
9ce12cc8de Add side widgets to QLineEdit via QAction.
Add QLineEdit::addAction() overloads,
allowing for a variable number of icons or user-defined
widgets.

Change-Id: Id298f18c2f47cc998170357e65cc6098df851aab
Done-with: Kevin.Ottens@kdab.com
Reviewed-by: Thomas Zander <zander@kde.org>
Reviewed-by: Richard J. Moore <rich@kde.org>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@digia.com>
2013-08-06 08:19:38 +02:00
Andreas Aardal Hanssen
8fce4e97ba Fix double transform for items ignoring parent transformations.
Previously, the topmost untransformable's scene transform, which
includes the item's position and local transformation, was used to
determine the item's anchoring position. This position was then
passed on to be multiplied by the item's transform again. This
works fine for toplevel untransformable items that don't have any
transform set at all, but those who do would have their transforms
applied twice - one to determine the anchoring position, and again
to transform the item itself. Since only translation transformations
can affect the first operation (the anchoring pos), this bug only
applies to items that set ItemIgnoresTransformations and use a
local transform that includes translation.

Task-number: QTBUG-21618
Change-Id: I772d52d59dfd9f242d0140632a87e9c68dfe0ea1
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
2013-08-05 20:15:53 +02:00
Liang Qi
55e22cfe0e OSX: Make machtest compile on 10.9
Added the compiler options, we need the info of sdk.

Task-number: QTBUG-32715
Change-Id: I70612f36a16e0ab5025194a10ce399822e159c7c
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-05 17:58:24 +02:00
Tor Arne Vestbø
12571cc095 Fix tst_QFile::caseSensitivity on OS X
By not assuming that the file system is case insensitive. OSX supports
both.

Change-Id: I11a4ac4cdff97b97b183dd319757a42ae14bb52d
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-05 17:20:13 +02:00
Tor Arne Vestbø
d66d912c53 Fix tst_QCompleter::directoryModel() on OS X
By not assuming that we have the '/Developer' directory at the root
of the file system. 'Users' is less likely to be removed/deprecated.

Change-Id: I659bdb67cfb1ed2f73bc643ba4afe1f1f89d5bc5
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
2013-08-05 16:53:17 +02:00
Eskil Abrahamsen Blomfeldt
3b12fa2c04 Fix clean-up code in Android autotest script
If the files directory is not world-readable as well as
writable, the "rm *" command will fail because it cannot list
the files to delete.

Task-number: QTBUG-32079
Change-Id: Idb32a2be3184b9ffc43d011136fcc6f2a2a01756
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
Reviewed-by: Simo Fält <simo.falt@digia.com>
2013-08-05 14:53:18 +02:00
Eskil Abrahamsen Blomfeldt
d05ce9c61e Android: Enable script to run single autotest
To make it easier to debug failures, adds the "testcase"
commandline option, which takes the name of the test to
run and then just runs this single test.

Change-Id: Ib202bb2a5dac889b6691f9c4d0620b3e0941cf3d
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2013-08-05 14:53:06 +02:00
Sergio Ahumada
13d7823ef7 tests: Enable some itemmodels tests that don't depend on Qt Widgets
Make qabstractproxymodel and qidentityproxymodel build and run
even if -no-widgets is used since they don't depend on Qt Widgets.

Change-Id: I48bc2f6a78812b1bf0083f76c6a4e106f4e38650
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2013-08-05 13:26:15 +02:00
Thiago Macieira
c615dcc441 QUrl: do not decode "#" in fragments
For some time, we've assumed that the URL specification had a mistake in
that it didn't allow the "#" character to appear decoded in the
fragment. We've gotten away with it so far.

However, turns out that the CoreFoundation NSURL class doesn't like it.
So we have to be stricter.

[ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no
longer decodes %23 found in the fragment to "#" in the output of
toString(QUrl::FullyEncoded) or toEncoded()

Task-number: QTBUG-31945
Change-Id: If5e0fb37bae84710986c9ca89bd69ec98437cd63
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-08-04 04:48:35 +02:00
Thiago Macieira
7b964c77fa Make sure that QUrl::FullyDecoded mode uses U+FFFD for bad UTF-8
It's a good practice to always replace bad UTF-8 sequences with the
replacement character. It could be considered a security issue too.

Change-Id: I9e7d72e4c4102cdb8334449b5e7f882228a9048f
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-08-04 04:48:13 +02:00
Thiago Macieira
1fa5ea7a6a Remove fully-decoded QUrl user info and authority sections
Those sections contain more than one components of a URL, separated by
delimiters. For that reason, QUrl::FullyDecoded and QUrl::DecodedMode do
not make sense, since they would cause the returned value to be
ambiguous and/or fail to parse again.

In fact, there was a comment in the test saying "look how it becomes
ambiguous".

Those modes are already forbidden in the setters and getters of the full
URL (setUrl(), url(), toString() and toEncoded()).

[ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no
longer supports QUrl::FullyDecoded mode in authority() and userInfo(),
nor QUrl::DecodedMode in setAuthority() and setUserInfo().

Change-Id: I538f7981a9f5a09f07d3879d31ccf6f0c8bfd940
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-08-04 04:48:05 +02:00
Thiago Macieira
993bbb4d4b QUrl: update our understanding of the encoding of delimiters
The longer explanation can be found in the comment in qurl.cpp. The
short version is as follows:

Up to now, we considered that every character could be replaced with
its percent-encoding equivalent and vice-versa, so long as the parsing
of the URL did not change. For example, x:/path+path and
x:/path%2Bpath were the same. However, to do this and yet be compliant
with most URL uses in the real world, we had to add exceptions:
 - "/" and "%2F" were not the same in the path, despite the delimiter
   being behind (rationale was the complex definition of path)
 - "+" and "%2B" were not the same in the query, so we ended up not
   transforming any sub-delim in the query at all

Now, we change our understanding based on the following line from
RFC 3986 section 2.2:
   URIs that differ in the replacement of a reserved character with
   its corresponding percent-encoded octet are not equivalent.

From now on, QUrl will not replace any sub-delim or gen-delim
("reserved character"), except where such a character could not exist
in the first place. This simplifies the code and removes all
exceptions.

As a side-effect, this has also changed the behaviour of the "{" and
"}" characters, which we previously allowed to remain decoded.

[ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no
longer considers all delimiter characters equivalent to their
percent-encoded forms. Now, both classes always keep all delimiters
exactly as they were in the original URL text.

[ChangeLog][Important Behavior Changes][QUrl and QUrlQuery] QUrl no
longer decodes %7B and %7D to "{" and "}" in the output of toString()

Task-number: QTBUG-31660
Change-Id: Iba0b5b31b269635ac2d0adb2bb0dfb74c139e08c
Reviewed-by: David Faure (KDE) <faure@kde.org>
2013-08-04 04:47:33 +02:00
David Faure
672fcbe9c6 QMimeDatabase: Fix handling of duplicate mimetype definitions (2/2).
7721c3d27c fixed the case where two similar definitions are in the same
directory. This commit fixes the case where two similar definitions are
in different directories, both in the search path (GenericDataLocation).

If the file extension gives us the same mimetype twice, there's no conflict,
i.e. no reason to fallback to determination from contents.

Change-Id: I72c56004b6d5e88964159e53ec160ce8b06c2264
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2013-08-03 14:44:12 +02:00