Commit Graph

6918 Commits

Author SHA1 Message Date
Konstantin Ritt
d48f3fc1e7 fix undefined behavior issue on Integrity
in contrast to ::strdup(), qstrdup() allocates memory via new[];
deallocating this memory with free() leads to undefine behavior.

Change-Id: I0692c4bef010c05de547283b00b6c6043ac24c79
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 15:58:03 +02:00
Konstantin Ritt
f4d02ecdbf optimize canonicalOrderHelper() for generic case
if there is no need to swap codepoints A and B,
then we proceeding with advance to the next codepoint B
that becomes A, and some next codepoint C becomes B;
in such case we can easily skip the re-calculations for A
by using previously calculated results for B

Change-Id: I5c63589c274acaddf0f6a4cb1e0608d352a0c1b3
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-19 15:57:38 +02:00
Konstantin Ritt
73423db31d qwindowsintegration: fix build with -no-accessibility config option set
Change-Id: I2f4080b04f61ec425d41180f0163cebcc745c1b9
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-19 13:26:51 +02:00
Casper van Donderen
c4e308d3f7 QDoc: Generate index file for DITAXML.
This change moves the fullDocumentLocation function to the generator
base-class and adds generateIndex to the DITAXML Generator.
All function calls to fullDocumentLocation are now handled by the static
function in the base-class which will use the file extension from the
currently active generator (either DITAXML or HTML).

Change-Id: I24ce09c05a63eb5980b1243c58990e7ce9d42036
Reviewed-by: Martin Smith <martin.smith@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
4de95586f1 Re-enable QGLThreads autotest on Mac OS X.
This test passes consistently on Mac OS, but crashes consistently on
Windows and fails consistently on Ubuntu 10.04 and 11.10.

Disable the test only on platforms where it known to fail, so that CI
can use it to detect future regressions on platforms where the test
currently passes.

Task-number: QTBUG-22560
Change-Id: I0def45e1ed7dd3387e42e7294a495c89bc0caea6
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
970f5e18fe Re-enable QGL autotest on Mac OS X and Ubuntu 11.10.
This test passes consistently on Mac OS and Ubuntu 11.10, but crashes
consistently on Windows and fails consistently on Ubuntu 10.04.

Disable the test only on platforms where it known to fail, so that CI
can use it to detect future regressions on platforms where the test
currently passes.

Task-number: QTBUG-25293
Change-Id: I5d6a474ea1e6fdf3983f164ebc181e1dd6e3f639
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Jason McDonald
fb0978e963 Remove insignification from QtConcurrentFilter test.
This test has one unstable failure that occurs about 0.8% of the time in
CI.  Make the test catch this particular failure and re-enable the rest
of the test.

Task-number: QTBUG-20688
Change-Id: I22f5d372db77ea35163f96195ac0c174d8078899
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 13:26:51 +02:00
Thiago Macieira
77cc912590 Don't use QByteArrayLiteral for a non-stored QByteArray
Unless you're creating a QByteArray that you will store, don't use
QByteArrayLiteral. Using it for 1 byte that is always concatenated to
something else is an extreme waste.

Change-Id: Icc29e4c4cb1d0aad1714bdeec8ff41da7c301af9
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-19 13:26:51 +02:00
Thiago Macieira
275945f144 Add an assertion to deleteLater() before it modifies QEvent::d
The deferred deletion functionality stores the event loop level
nesting count in the QEvent d pointer. In Qt 4, this d pointer was
not usable because we forgot to add a proper copy constructor and
assignment operator to it, so the deleteLater() process stored the
count here safely.

Since Qt 5 now has non-implicit copy methods, the d pointer could be
used in the future. If QEvent uses it, this assertion will
trigger. Note that it doesn't apply to classes derived from QEvent,
though.

Change-Id: I8600c8e9379921e32aca166bc0a6c0b4c4ed799f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 12:14:30 +02:00
Friedemann Kleint
a633d80efe Fix font substitutions.
- Remove remains of platform-specific substitution tables in QtGui.
- Deprecate QFont::removeSubstitution() in favour of
  QFont::removeSubstitutions() (as suggested in the comments).
- Clean up substitution code, remove postfix operator++ on
  iterators and repeated invocation of .end().

Change-Id: I2e82e4ce2dd357d49e4d2b7fd6f95785acfcda95
Reviewed-by: Miikka Heikkinen <miikka.heikkinen@digia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-19 11:07:25 +02:00
Girish Ramakrishnan
c0d8d97802 -device: create qdevice.pri only when build tree is initialized
The build tree is not initialized when -help is passed to configure.
The mkspecs/ directory is not created and thus the mv fails results
with the following error:
mv: cannot move `.device.vars' to `/tmp/qtbase/mkspecs/qdevice.pri': No such file or directory

The solution is to create qdevice.pri just before we run config.tests.

Change-Id: Ie83018e27a03bb840d213aae8c963b0074e62bb4
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Konstantin Ritt
21eb4578e5 replace getenv("HOME") with a "centralized" QDir::homePath()
Task-number: QTBUG-4902

Change-Id: Ie9124de45be2d8e859f8b0aaea246e660145a1c5
Reviewed-by: John Layt <jlayt@kde.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Stephen Kelly
1f622c986b Don't fail to configure if QNX platform plugin is built.
Change-Id: I781eab2fb07fe62d733317b8a72dd899caaf5a80
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Thiago Macieira
a0aad0b1b2 Add a functionality test for DirectFB to ensure it compiles.
Some versions of the DirectFB headers are unclean and will cause Qt
compilation failures. So blacklist those versions. Version 1.5.3
(present in Fedora 16) is known to be buggy and gets disabled by this
patch.

The compile error was:
  qurlquery.h:169:5: error: ‘typeof’ was not declared in this scope

(qplatformcursor_qpa.h includes qevent.h which includes qurl.h which
includes that)

The error comes from the Q_FOREACH expansion. Note that Q_FOREACH uses
__typeof__, so it's supposed to be safe, unless someone ill-advised
goes and defines the GCC "safe" macro (double underscores on both
sides) to something else.

Change-Id: Ida41ee3b3c2fcba86a7e12182e7055123166693b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-19 11:07:25 +02:00
Samuel Rødal
197aa9f67f Get rid of warning when building qplatformwindow_qpa.cpp.
This Q_UNUSED was unintentionally lost in 55fa3c189f.

Change-Id: I832ee7c8d46cf66f7b63045015bef181fddebeef
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-04-19 11:07:25 +02:00
Sean Harmer
4c0289c337 Do not force OpenGL sample buffers on in the qnx qpa plugin
Change-Id: I6af40382102f2163f5ad8606b498a89db420c5d6
Reviewed-by: Nicolas Arnaud-Cormos <nicolas@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2012-04-19 11:07:25 +02:00
Laszlo Agocs
56850d6cd7 Remove internal QClipboardEvent
This class is not in use with QPA.

Also remove useless sending of QEvent::Clipboard from the
QGuiApplication dtor. That event is not (cannot be) handled by the
platform plugins and is not used at all. Perhaps it should be removed
altogether from the public API.

Change-Id: I478b31ff9875a8dfff99bddafd335ab02a5fe477
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-19 11:07:25 +02:00
Jędrzej Nowacki
ff55d64f67 Remove QVariant constructor taking Qt::GlobalColor.
The constructor is wrong, it creates instance of QVariant encapsulating
a QColor instance. QVariant should not implicitly convert data, never.

Change-Id: Idc794ecdecb42d8b53fee3f993bf51ddd43f595d
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-04-19 10:09:39 +02:00
Hannu Lyytinen
1267bd82a4 Extend QUDeviceHelper to detect DRM graphics devices.
KMS QPA plugin duplicates udev code needlessly; merging the
functionality here.

Change-Id: I69be8549f1feee298fe28215d491c8ce5de96b18
Reviewed-by: Laszlo Agocs <laszlo.p.agocs@nokia.com>
2012-04-19 08:48:18 +02:00
Toby Tomkins
02242a8b01 directfb: Fix namespace compilation.
Change-Id: I55450e0585092f0b052cf6755acc541915c411e5
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@nokia.com>
2012-04-19 08:17:28 +02:00
Jason McDonald
a594e5cfc8 Remove insignification from QFocusEvent test on Mac OS X.
This test has one stable failure.  Mark that failure with QEXPECT_FAIL
and re-enable the test.

Task-number: QTBUG-22815
Change-Id: I38445b659235076b00d9dd82d2a824d1caa1439b
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:07:39 +02:00
Jason McDonald
25f3c16c94 Remove insignification from QAccessibility test on Mac OS X.
This test has one stable failure.  Mark that failure with QEXPECT_FAIL
and re-enable the test.

Task-number: QTBUG-22812
Change-Id: I1e1ad63472db7ba724c9936ae718de0b3b078bbd
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:07:30 +02:00
Jason McDonald
bb495823d6 Remove insignification from QClipboard test on Mac OS X.
This test hasn't failed for more than 250 CI runs, before which it was
failing consistently.

Change-Id: I0c2f7d3893731c800bebb0d3d51312d0d0948eb5
Reviewed-by: QTBUG-23057
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:07:22 +02:00
Jason McDonald
005441f742 Remove insignification of QStaticText test on Mac OS X.
This test has not failed in more than 300 CI runs, before which it was
failing consistently.

Change-Id: Ib9a0e4120b276e5620b544a0836134f1cbac7c84
Reviewed-by: QTBUG-23063
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:07:13 +02:00
Jason McDonald
b6cf486816 Re-enable QTextScriptEngine test.
The test has two stable failures. Mark these with QEXPECT_FAIL and
re-enable the test.

Task-number: QTBUG-23064
Change-Id: Ibb607ac252a6690d0d37f650a5ae41e5e2a681a2
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:07:03 +02:00
Jason McDonald
14ba6240bb Re-enable QFontDatabase test on Mac OS X.
This test has one stable failure on Mac.  Mark that failure with
QEXPECT_FAIL so that the rest of the test can be used by CI to catch
regressions.

Also, change the failing QVERIFY to QCOMPARE so that the mismatching
QStringList values will appear in the test output.

Task-number: QTBUG-23062
Change-Id: Icb0cccfe0bd5bc74a6a2c1ddba89c1f55f5e64de
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
2012-04-19 08:06:52 +02:00
Casper van Donderen
0bc02fd0d6 Doc: Prepare for building modular QtCore docs.
This change fixes most qdoc errors in QtCore. There are about 900 left.
The main thing this change does is moving documentation from qtcore from
/doc/src to /src/corelib/doc.
Other issues resolved are mis-use of qdoc commands.

Change-Id: I002d01edfb13575e8bf27ce91596a577a92562d1
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
Reviewed-by: Jerome Pasion <jerome.pasion@nokia.com>
2012-04-19 07:34:53 +02:00
Jason McDonald
7f0c130be9 Re-enable QPrinterInfo test on Mac OS X.
This test has not failed in the last 1000 CI runs on Mac.  It only fails
when the test machine has some printers configured, which is not
presently true for the CI machines.

The two options are to disable the test on all unix platforms (because
it fails on all unicies when there are printers present) or to enable
the test for all platforms so that CI can catch regressions that don't
depend on having printers connected.  I choose the latter option.

If the CI machines are configured with printers before the known bug is
fixed, the failures should be marked with QEXPECT_FAIL rather than
disabling the whole test again.

Task-number: QTBUG-23060
Change-Id: I3cebed4aefdd088ff00215ea9d7413f90bd9e9b1
Reviewed-by: John Layt <jlayt@kde.org>
2012-04-19 04:13:04 +02:00
Jason McDonald
61c1c5a650 Re-enable the QItemDelegate test on Ubuntu 11.10.
This test used to be unstable, but has not failed for more than 400 CI
builds.

Task-number: QTBUG-23637
Change-Id: I0d92136aa9d641e447820ab19b53034f475f74da
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
Reviewed-by: Toby Tomkins <toby.tomkins@nokia.com>
2012-04-19 04:13:04 +02:00
Rohan McGovern
1464081dfb Really marked tst_QProcess as insignificant on Windows.
This test hangs ~2.6% of the time in CI.

The previous commit which attempted to mark this test as insignificant
did not work due to this .pro file doing a load(testcase) prior to the
line which set CONFIG += insignificant_test.  testcase.prf must be
loaded _after_ insignificant_test is set.

Task-number: QTBUG-25342
Change-Id: I20470337fda8235e2fd0b6e8d5f564c8c57d167e
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
2012-04-19 01:57:58 +02:00
Ian Dean
22042dd769 Change coreservices -> ios
Replace "contains(QT_CONFIG, coreservices)" with "!ios" in config files.
Replace "QT_NO_CORESERVICES" with "Q_OS_IOS" in source files.

Change-Id: Id3b02316b245a24ce550e0b47596d18a4a409e4f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
2012-04-19 01:57:58 +02:00
Konstantin Ritt
9a7f7b5d34 qdbusxml2cpp: fix build on Windows
bootstrapped process defines QT_NO_LIBRARY but QT_NO_LIBRARY
is not supported on Windows

Change-Id: I353a8690832e292522ed6c39a7e0ca19b0980e01
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-04-19 01:57:58 +02:00
Girish Ramakrishnan
ee166bbce0 configure: fix script error with -help
configure -help results in the following error:
[: 3174: missing ]

Change-Id: Ibe7a5292087924d3efd0c87d9fb91deee831171f
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-19 01:57:58 +02:00
Jędrzej Nowacki
b3e55fbf4e Do not assert when QVariant is constructed from an invalid type id
That change also fix moduleForType() which was wrongly recognizing
negative ids as belonging to Core.

New tests were added.

Change-Id: I40a5819effb32489a45937011980457387c9f8be
Reviewed-by: Kent Hansen <kent.hansen@nokia.com>
2012-04-19 01:57:58 +02:00
Eskil Abrahamsen Blomfeldt
06d4ea6400 Fix memory leak when drawing text in non-common script
When the font engine cache was updated for new parameters, we
would overwrite the cached engine, but not deref the old
cached engine, thus it would never be deleted.

This is manual cherry pick of 44c14470e5b28e45c19d6959b114e063cf3f4d83
from 4.8 branch.

Change-Id: Ice2e555fe380dc9851ef490fa1a6928936ae4c35
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
2012-04-18 23:26:01 +02:00
Samuel Rødal
197b423e96 Optimized EGLFS backing store a bit.
Avoid expensive image copying when possible.

Change-Id: Ia79919ea7652d7bfdd744198c494c20cb78a0f48
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-18 22:23:53 +02:00
Girish Ramakrishnan
10c88faf79 api: remove QWindow::visible()
The correct api is QWindow::isVisible(). Removing the api
is safe since QWindow is not even released yet.

Only qtdeclarative needed to be fixed with
71c8fe296fe5aa7e79033dd8f5b539852d4276e0.

Change-Id: Ie571ed4802fe89132419e402acdb854446f4578f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-18 21:24:25 +02:00
Stephen Kelly
c12057df29 Fix a CMake unit test.
This has been broken since modules do not currently find
their (public) dependencies.

Change-Id: I0c9e7c46f7a6499993c98aa6d33996bdd3a1be5f
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-18 19:53:34 +02:00
Stephen Kelly
d5bd336dba Build the first CMake test if *at least* version 2.8.7 is available.
Change-Id: I061130e5b937ad818cc9016ae62d5890092d60f2
Reviewed-by: Clinton Stimpson <clinton@elemtech.com>
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-18 19:53:34 +02:00
Stephen Kelly
e8e3049d31 Fix unused variable warning.
Change-Id: I8daa2912e1c26e9e9f6bb77f64eb3e06c6715cce
Reviewed-by: David Faure <faure@kde.org>
2012-04-18 17:28:47 +02:00
Girish Ramakrishnan
21102a71ff api: QGuiApplication::inputMethod should be static
Pretty much all methods in QGuiApplication are static.

Also adds documentation.

Change-Id: I96808dd266922432b92fe3962292e4d5b6a8ab46
Reviewed-by: Pekka Vuorela <pekka.ta.vuorela@nokia.com>
2012-04-18 15:11:13 +02:00
Jason McDonald
d615e02bf1 Remove insignification of QNetworkInterface autotest on Windows.
This test has not failed in the last 300 CI runs.

Change-Id: I559ea223856b1460deb343384d5b4439f42a41d7
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-04-18 14:33:55 +02:00
Jason McDonald
e4f4dfe340 Remove insignification from the Lancelot test.
This test has not failed in the last 400 CI builds.

Change-Id: I22b59565a6a6cb48653bd9b0d967abbf074d59a4
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
2012-04-18 14:23:48 +02:00
Jason McDonald
fe4aa255a9 Update task numbers for QUdpSocket autotest.
Reference tasks with detailed analysis of failures rather than generic
task for blacklisted tests.

Change-Id: Ibd0ed836ffb84fe9aa14488d43085316e666de21
Reviewed-by: Shane Kearns <shane.kearns@accenture.com>
2012-04-18 14:23:42 +02:00
Stephen Kelly
cd2b94771c Fix some unused variable warnings.
Change-Id: I3ffbb155c0efa65bb33a0e2ce80dbd75dc56f3fc
Reviewed-by: David Faure <faure@kde.org>
Reviewed-by: Jason McDonald <jason.mcdonald@nokia.com>
2012-04-18 14:23:27 +02:00
Jędrzej Nowacki
9ecce11261 Remove redundant check in QMetaType::typeInfo
The check was introduced when void was not a fully defined type.

Change-Id: I4df8607999436f8db92be77fc8fd203fc66c2816
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-18 12:16:20 +02:00
Jędrzej Nowacki
ab0bcd0792 Remove redundant checks in QVariant.
QVariant and QMetaType have aligned type naming implementation.

Change-Id: I9eaae1045c492c148e3e9d23f4e04d48272f7ec2
Reviewed-by: Stephen Kelly <stephen.kelly@kdab.com>
2012-04-18 12:16:09 +02:00
Jędrzej Nowacki
6f0065944d Hide QTypeModuleInfo in a private namespace.
The class is private and shouldn't pollute global namespace.

Change-Id: Ib44473fd72e5a70096eeff1662e88b29263d19c6
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
2012-04-18 12:15:52 +02:00
Stephen Kelly
50aca3d020 Fix some unsigned comparison warnings.
Change-Id: I4e72dbb6e207757c8bb75a7726c83ed5916df094
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-04-18 11:36:05 +02:00
Stephen Kelly
3b1a52b573 Fix build with QT_NO_CLIPBOARD.
Change-Id: I82558e1e432934b98236d69106fb98e44e819095
Reviewed-by: Richard J. Moore <rich@kde.org>
2012-04-18 11:36:05 +02:00