QBezier::pointAt() could potentially return values outside the bezier's
bounds, even when the bezier was a straight horizontal line. For
example, with y = 0.5, it would produce y=0.5 or y=0.49999999999999 for
different values of t, which when rounded cause jittering in a QML
PathView.
Task-number: QTBUG-17007
Task-number: QTBUG-18133
Cherry-pick-of: 8b66982ec7b4b5d2071931c288973dce73dc9875
Change-Id: I4ecac7b9085aaaaaaaaaaaaaaaaaaaaaa7d7b0bc
Reviewed-on: http://codereview.qt.nokia.com/2467
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
This test had an invalid circular dependency: the test is in qtbase, and
it depends on lrelease in qttools, which depends on qtbase.
Change the test to skip if lrelease is not available or not working.
Change-Id: I4696f4a178a6f8c0f2e76b5c4ae7f60c4f953334
Reviewed-on: http://codereview.qt.nokia.com/2619
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
We need this to avoid syncing certain files in QtDeclarative on
Windows.
Change-Id: Ia9fc95262ac18bafc39efc038ea70a1b5d67cddd
Reviewed-on: http://codereview.qt.nokia.com/2641
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
... and add a new method subjectAlternativeNames() instead. This was
a typo in the API.
Change-Id: Id8704c387c9ff8e1af2b9a524ff628f5c053a294
Reviewed-on: http://codereview.qt.nokia.com/2618
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: João Abecasis <joao.abecasis@nokia.com>
This test had an invalid circular dependency: the test is in qtbase, and
it depends on lrelease in qttools, which depends on qtbase.
Change the test to skip if lrelease is not available or not working.
Change-Id: I964ddaf9485a2afed5a1bd4f88d9bdccadf1cfca
Reviewed-on: http://codereview.qt.nokia.com/2472
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
The wayland plugin's clipboard implementation lacked support for data
set via QMimeData::setImageData, QClipboard::setPixmap, etc. because
everything was treated as a QByteArray. A variant having an image
cannot however be converted to a byte array. Therefore, to make these
convenience functions to work, the image is now encoded via
QImageWriter before sending it. On the receiving side QMimeData is
capable of decoding images from byte arrays, so no problem there.
The patch also renames an internal QWaylandMimeData class to a more
suitable clipboard-specific name as the functionality is clipboard
specific.
Change-Id: I77e7df903b8dbe9731613fdbb9693b2a37b05d18
Reviewed-on: http://codereview.qt.nokia.com/2616
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jørgen Lind <jorgen.lind@nokia.com>
The test CA I used for the QSslCertificate autotests had a short
lifespan which meant that the tests now fail. See bug QTBUG-20582.
This change gives it a lifespan of 10 years matching the leaf
certificates.
In addition, remove the temporary QEXPECT_FAIL statements.
Change-Id: Ic1918e6e31f5cc755ec43d899663140ebe95a2a9
Merge-request: 37
Task-number: QTBUG-20582
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2548
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This test fails pseudorandomly, which makes the result insignificant
for the purpose of detecting regressions.
Task-number: QTBUG-20688
Change-Id: I3274953841a553e35b4eb844702868f2f9ec0525
Reviewed-on: http://codereview.qt.nokia.com/2491
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
This test crashes pseudorandomly, which makes the result insignificant
for the purpose of detecting regressions.
Task-number: QTBUG-20686
Change-Id: I3079d935d46a4bcd2b119c2b9b452f0b69dccf21
Reviewed-on: http://codereview.qt.nokia.com/2479
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Changes the failure message from the previously brief:
'(errors.count() == 0)' returned FALSE.
To the vastly more useful:
'(errors.count() == 0)' returned FALSE.
(errors: [ "The certificate has expired" ])
Change-Id: I587cd8ddfd3c17e273220bc95691b3dc92390547
Reviewed-on: http://codereview.qt.nokia.com/2241
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Peter Hartmann <peter.hartmann@nokia.com>
This autotest may fail depending on the version of fonts which are
installed on the system. It has no way to verify if the correct fonts
are installed, and it's unclear from where the correct version of the
fonts may be obtained.
Therefore, disable the test by default unless the user has indicated
that they have a correct setup by setting QT_HAVE_TEST_FONTS=1.
Task-number: QTBUG-20682
Change-Id: I24174520f54af6a9b2c13c9c1347f46555bce3d4
Reviewed-on: http://codereview.qt.nokia.com/2469
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@nokia.com>
This replaces the need for applications to explicitly make a call to
enable the debug services, and rather does it in declarative.h when the
'declarative_debug' CONFIG option is used.
Done-with: Kai Koehne
Reviewed-by: Martin Jones
Reviewed-by: Michael Brasser
(cherry-picked from commit 5517cc588c39814530b8bfd957821f55be42acf2)
Change-Id: If180d2b826879d6d02c7be4d3075917815ccf349
Reviewed-on: http://codereview.qt.nokia.com/2435
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
This autotest failure is stable, so it should be marked with
QEXPECT_FAIL, not CONFIG+=insignificant_test.
Note that the test row naming had to be changed, as the test previously
created many rows of testdata with the same name, making it impossible
to skip only the broken rows.
Task-number: QTBUG-20661
Change-Id: Ie38f5dddafe7686e30eaa8ff3445310935d2cd9a
Reviewed-on: http://codereview.qt.nokia.com/2419
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
This test unconditionally assumed that SVG support was available.
This is an invalid circular dependency: the test is in qtbase and
depends on qtsvg, which depends on qtbase.
Change the test so that it uses SVG support only if available.
Change-Id: Ia63ce74abdecd4bcf7a4e0714b8cb7c488e17495
Reviewed-on: http://codereview.qt.nokia.com/2426
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
This test assumed that C++ exceptions could always be caught by the
event loop. This is not the case when the Glib event loop is used.
Skip the relevant portion of the test in that case.
Change-Id: I6a6325c3590c810a5aba28ec98279581dcfaf55c
Reviewed-on: http://codereview.qt.nokia.com/2455
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This test assumed that Qt's available image formats could be determined
at compile time. This was never correct since the image formats are
loaded from plugins at runtime; in Qt5 it became a real problem since
one image format (svg) was moved out of qtbase into a separate module,
turning this into a circular dependency: this test in qtbase depends on
qtsvg, which depends on qtbase.
Always check the image formats at runtime instead.
Change-Id: I5e770c5b11276c39910e34f232a2fea0a7abaa8c
Reviewed-on: http://codereview.qt.nokia.com/2457
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Increased thread wait timeout from 3 to 10 milliseconds, for slower or
heavily loaded machines. (There was a previous attempt to improve
stability of this test some time ago by increasing the timeout from 1
to 3 milliseconds.)
Note that this increases the runtime of the wakeOne test from ~5 to ~14
seconds.
Change-Id: Ib556d4c949a6989fe71c11f5dc10feb2ec45c512
Reviewed-on: http://codereview.qt.nokia.com/2458
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
Removed some binary compatibility tests written specifically to test a
change introduced between Qt 4.1 and 4.2. Qt 4 and 5 are not binary
compatible, the test no longer makes sense.
Change-Id: I3e8f9b6011105e504c20bedad51af8193b102552
Reviewed-on: http://codereview.qt.nokia.com/2464
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
This autotest failure is entirely stable, so QEXPECT_FAIL should be used
instead of insignificant_test.
Task-number: QTBUG-20687
Change-Id: I0444e725b436fe93d30cbe54edc673594ca9b9fe
Reviewed-on: http://codereview.qt.nokia.com/2486
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
tst_qfilesystemmodel::sort uses some internal API to affect the sorting
behavior. This means that part of the test must be disabled when
private symbols aren't available.
Change-Id: I2e7b9d7a33cb3e7032bc5380c03fa29ecc84e12c
Reviewed-on: http://codereview.qt.nokia.com/2413
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
These tests assumed that a crashing program will always exit within
five seconds. This is not true in some situations. On our test macs,
enabling crash dumps can easily cause a process to take longer than
five seconds to crash.
Increased the timeout to 30 seconds.
Change-Id: Ifca240ac8d3da1346f33110653ac47de6ba2ab81
Reviewed-on: http://codereview.qt.nokia.com/2407
Reviewed-by: Kalle Lehtonen <kalle.ju.lehtonen@nokia.com>
If we do not process the event, q->underMouse may return false in
QGraphicsViewPrivate::centerView (as the QEvent::Enter has not been
received yet.)
It was working before if by luck, the window appears under the cursor.
Change-Id: I9b4497683eae20915680297013a9c21fd6275f4b
Reviewed-on: http://codereview.qt.nokia.com/2385
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@nokia.com>
Since we now have QBasicMutex as a POD, we can simplify the mutexpool.
This remove the call the the Q_GLOBAL_STATIC and some others tests that
are taking CPU cycles when activating a signal.
The QMutexPool class itself can't be simplified because its mutex are
recursive mutexes, and the size is dynamic. also it is harder to get all
the mutexes initialized to 0.
Change-Id: Ie781655635907d2ad620eb189099cba14638414f
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2171
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
And added a POD QBasicMutex. (QBasicMutex* can safely be
static_cast'ed to QMutex*)
The d pointer is not anymore always a QMutexPrivate.
If d == 0x0: the mutex is unlocked
If d == 0x1: the mutex is locked, uncontended
On linux:
if d == 0x3: the mutex is locked contended, waiting on a futex
If d is a pointer, it is a recursive mutex.
On non-linux platforms:
When a thread tries to lock a mutex for which d == 0x1, it will try to
assing it a QMutexPrivated (allocated from a freelist) in order to wait
for it.
Change-Id: Ie1431cd9402a576fdd9a693cfd747166eebf5622
Reviewed-by: Bradley T. Hughes <bradley.hughes@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2116
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
This one-line change makes the binary search in QTextEngine::findItem
behave consistently with the linear search that it replaced in commit
acf678e57ed088f3e56a551cac6c7c3322005750. The new behavior seems to
cause crashes in kword (and perhaps other applications) by triggering a
logClusters assert, although I have been unable to create a unit test
that reproduces this.
Task-number: QTBUG-17209
Done-by: Dr. Robert Marmorstein <robert@narnia.homeunix.com>
Change-Id: I68b79f024e9836e1cc8b0f3514889120541eb2ea
Reviewed-on: http://codereview.qt.nokia.com/2343
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jiang Jiang <jiang.jiang@nokia.com>
QtDBus requires a QVariant argument to be passed to property reads and
writes. For performance reasons QtDeclarative does not do this. By
flagging the meta object as requiring this, QtDeclarative can do so only
required.
Task-number: QTBUG-15052
Change-Id: I032c946f079523f5f10217ed56642fb315265d9f
Reviewed-on: http://codereview.qt.nokia.com/2365
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Martin Jones <martin.jones@nokia.com>
When a table that is related to in a QSqlRelationalTableModel gets
updated in some way (e.g. a new row, or the data is changed) then the
related model could not be updated without recreating the
QSqlRelationalTableModel.
Now, to get around this, select() can be called on the related model to
get it to be updated.
Task-number: QTBUG-7885
Reviewed-by: Charles Yin
Reviewed-by: Michael Goddard
Change-Id: Ic589e840234f3a809bcb112a807a87afe0bc25ca
(cherry picked from commit 2c60a4f67f9fb02f3b711fe749b2f293a07b4e02)
Reviewed-on: http://codereview.qt.nokia.com/2224
Reviewed-by: Charles Yin <charles.yin@nokia.com>
Mark the selection as dirty if an input method event contains a
selection and emit selectionChanged() if it's not emitted by
finishChange().
Task-number: QTBUG-19731
Change-Id: Ief6f06f40071f64dae4db0ba365676c059a39c7e
Reviewed-on: http://codereview.qt.nokia.com/2081
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>
Previously, the mac arch was only put into qconfig.pri for carbon
and cocoa builds. Make sure it is also available for qpa builds.
This is needed for projects which need to select architecture-specific
sources in their .pro file.
Change-Id: I5f72e3b699b11dafc4dae052620913f2b9b81d0a
Reviewed-on: http://codereview.qt.nokia.com/2313
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Marius Storm-Olsen <marius.storm-olsen@nokia.com>
Test started to fail, complains about outdated SSL certificate.
Task-number: QTBUG-20582
Change-Id: I2622375d9bc7b446dbbc18f72403896c60a8dee1
Reviewed-on: http://codereview.qt.nokia.com/2307
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Jonas Rabbe <jonas.rabbe@nokia.com>
And try to fail a bit more gracefully if it isn't.
Change-Id: I62e01c0536aa0a032940d6a9a5ccf5edcfeef221
Reviewed-on: http://codereview.qt.nokia.com/2109
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
Try a lot harder to remove the old $TARGET output, since make
clean isn't sufficient. Also fix a bug in program invocation
that was hidden because of the stale files.
Change-Id: I0a365409d81efb74c5836eaf9f129fd9b2cca77e
Reviewed-on: http://codereview.qt.nokia.com/2052
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
The timer id allocator doesn't need a paylod (hence T=void), but we want
to tune the allocation 'strategy.' We allocate a maximum of 6 blocks
(like before), but the first block is twice as large as before and is
not static writable anymore. The initial value is 1 (0 is not a valid
timer id), but otherwise the constants are the same as the defaults.
Change-Id: Ied49ff4d7a6a8d69bc8c7bfa5475e4111446659f
Reviewed-on: http://codereview.qt.nokia.com/2161
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
This is a generic implementation of the lock-free free list found in
qabstracteventdispatcher.cpp. Use next() to get the next free entry in
the list, and release(id) when done with the id.
This version is templated and allows having a payload which can be
accessed using the id returned by next(). The payload is allocated and
deallocated automatically by the free list, but *NOT* when calling
next()/release(). Initialization should be done by code needing it after
next() returns. Likewise, cleanup should happen before calling
release(). It is possible to have use 'void' as the payload type, in
which case the free list only contains indexes to the next free entry.
Autotest included.
Change-Id: Ifd12a961d47f3d76593c45061f72e55c9b80a43b
Reviewed-on: http://codereview.qt.nokia.com/2160
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
This is very much useful to be able to write things like
myTabWidget->tabBar()->setSelectionBehaviorOnRemove( QTabBar::SelectPreviousTab );
without subclassing QTabWidget.
Change-Id: Ic7c42709ea1086631d37f90f184b058c4b6e9601
Merge-request: 3
Reviewed-by: Olivier Goffart <olivier.goffart@nokia.com>
Reviewed-on: http://codereview.qt.nokia.com/2172
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
`load(qt_module_config)' clobbers DESTDIR.
Rearrange the order so that our setting of DESTDIR works as intended.
Change-Id: Id6f02e9fb55069fae9b2a75c9d0f51578b84f4d1
Reviewed-on: http://codereview.qt.nokia.com/2130
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Michael Goddard <michael.goddard@nokia.com>
There has been a few reports of user confusion from the fact that the
constData and data functions return results in column-major format.
There is nothing in the doc anywhere that states this, and nothing
states that the class is especially for OpenGL which would give a clue
at least.
Change-Id: I3a9afde0fbeb8b9d2bcba6a387620b60a56774b9
Reviewed-on: http://codereview.qt.nokia.com/2066
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Julian de Bhal <julian.debhal@nokia.com>
Check if the input method removes the selection and force emit
selectionChanged if it sets a new selection.
Task-number: QTBUG-19727
Reviewed-by: Martin Jones
Change-Id: Ic8ea1044d0917aac4e52368f431ac9e5c7db7c56
Reviewed-on: http://codereview.qt.nokia.com/2076
Reviewed-by: Qt Sanity Bot <qt_sanity_bot@ovi.com>
Reviewed-by: Andrew den Exter <andrew.den-exter@nokia.com>