summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* QDataStream: unify deserialization of containersAlex Trotsenko2016-07-011-3/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Serialization of the Qt container classes is accomplished by breaking up the data into primitive units. On the receiver side, these units should be read atomically to guarantee integrity of the container. Deserialization procedures for QHash and QMap were already implemented in accordance with this strategy and have the following behavior: - a previously latched error status is saved for the caller. This overrides possible different errors in the current read. This is consistent with the treatment of primitive types. - if an error occurs during the deserialization, the container is cleared. To make the API consistent, this patch adjusts the behavior of QList, QLinkedList, QVector, and QSet deserialization. On the implementation side we accomplish this with a private StreamStateSaver RAII class that consolidates the handling of the stream status for all containers. [ChangeLog][Important Behavior Changes][QtCore][QDataStream] Incomplete reads of Qt containers are now handled same way as for primitive types, meaning that previous errors are latched. Task-number: QTBUG-54022 Change-Id: I5c77257fe2a4637e8a7e6cf3cd43091c8469340e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Diaglib: Build DebugProxyStyle only when QtWidgets are usedFriedemann Kleint2016-07-011-4/+6
| | | | | Change-Id: Iba1ca731ac569db12211a93f65583d73ffcfce91 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* xcb: Send expose event while shrinking windowsBłażej Szczygieł2016-06-301-0/+19
| | | | | | | | | | | | | Send synthesized expose event while shrinking the QWindow. This fixes the regression which can break some applications which need the paint events while shrinking the QWindow. Added auto test. Task-number: QTBUG-54040 Change-Id: Iaa992abba67f428237fa12c6cae56592b8fcadb0 Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io> Reviewed-by: Louai Al-Khanji <louai.al-khanji@qt.io>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-207-11/+172
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | And blacklisted a few tests in tst_QUdpSocket. Conflicts: src/android/jar/src/org/qtproject/qt5/android/QtNative.java src/corelib/global/qglobal.cpp src/corelib/global/qsystemdetection.h src/corelib/io/qfileselector.cpp src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldeviceintegration.cpp tests/auto/network/socket/qudpsocket/BLACKLIST Task-number: QTBUG-54205 Change-Id: I11dd1c90186eb1b847d45be87a26041f61d89ef6
| * Finally fix crash in inplace-modified data-constructed imagesEirik Aavitsland2016-06-151-4/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid all inplace modification of images using external data buffers. Since the QImage methods are documented to create a (modified) copy, there is afterwards no API requirement on the lifetime of the data buffer. This patch supersedes 509bc7e59c69937900cf258e64889a6e88edbcf0 Task-number: QTBUG-53721 Change-Id: I3ccc01619eb61d8630104449394e0b76df0af695 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * tst_QUdpSocket - remove insignificanceTimur Pocheptsov2016-06-142-5/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the second attempt to remove 'insignificant' from UDP socket test to: - make changes ending up in regressions more difficult (hopefully impossible) to merge - switch to BLACKLIST if needed - make flaky tests more visible. For now this 'back to significant' will be accompanied by extended BLACKLIST. New in BLACKLIST: * OS X - datagram size-related problems (fixed in 5.7) * OS X - multicastLeaveAfterClose - will probably stay BLACKLISTED, seems to be a Darwin's quirk, can be fixed in OS X >= 10.10. * windows ... tst_QUdpSocket::echo seems to fail randomly on OS X/linux and it looks like it fails at the same time on different machines, should be something server-related (a guess only). Change-Id: Ib344348ffab03fab1b9309b80449a04d8ce247c6 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
| * Fix UNSIGNED values in QMYSQLJesus Fernandez2016-06-141-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The unsigned flag in columns was ignored when creating the list of bound values in a mysql table. So the result iteration with QSqlQuery::next stops after the first wrong truncated value. [ChangeLog][QtSql] Fixed QSqlQuery::prepare value truncation error when using UNSIGNED values in a MySQL database. Task-number: QTBUG-53969 Task-number: QTBUG-53237 Change-Id: I10d977993445f2794f1dd8c88b2e83517ef524f3 Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
| * QSslSocket (OpenSSL) - handle abort/close on sslErrors emittedTimur Pocheptsov2016-06-141-0/+27
| | | | | | | | | | | | | | | | | | | | | | | | If a user's code, attached to sslErrors signal, calls abort/close or disconnectFromHost but our SSL socket was configured not to verify a peer, no need to continue handshake after calling checkSslErrors (and finally crashing on invalid 'ssl' pointer). Task-number: QTBUG-53906 Change-Id: I7f185511d278f9d6f16e7d6c5ba424707141459c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * tst_QTcpSocket: Replace insignification on Windows by BLACKLIST.Friedemann Kleint2016-06-102-2/+13
| | | | | | | | | | | | | | | | | | | | Partially reverts f3939d943ed132eaf3daead797d961c3ffbc31a5. Task-number: QTBUG-52714 Task-number: QTBUG-49332 Task-number: QTBUG-49333 Change-Id: I1f1b3278134b1e6156c0cb7006d396154c776a46 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
* | Merge remote-tracking branch 'origin/5.7.0' into 5.7Liang Qi2016-06-161-8/+12
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/tools/qsimd_p.h Change-Id: I7c6bfc5873d97ad7f51a540dd9c18b9359dde59f
| * | Fix tst_QListView::setCurrentIndexAfterAppendRowCrash().Friedemann Kleint2016-05-241-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test was half-ported from Qt 4 and #ifdefed out depending on WINVER. When it became active, it failed since it queries the window handle too early in the process. Move the code sending the message into showEvent() to ensure a window handle exists and parent the listview properly to prevent a leaking toplevel. Change-Id: I74aa9ddfd0e88dd31e9258400fc3e473b6e0d92e Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | QDataStream: do not lose error status while reading containersAlex Trotsenko2016-06-151-12/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Otherwise, the code: ds >> s >> hash; could set the stream status to ReadPastEnd, while deserialization of the string is failed with ReadCorruptData status. Proposed solution is to restore a previously latched error status unconditionally in accordance with QDataStream::setStatus() docs. Change-Id: Id3a7dccf709b02e5b018efb48d7647ee48fe5124 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-1010-92/+122
|\ \ \ | | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: configure mkspecs/macx-ios-clang/features/default_pre.prf mkspecs/macx-ios-clang/features/sdk.prf mkspecs/unsupported/freebsd-g++46/qplatformdefs.h src/widgets/styles/qgtkstyle.cpp tests/auto/corelib/io/qdiriterator/qdiriterator.pro tests/auto/corelib/io/qfileinfo/qfileinfo.pro Change-Id: Ia943555d1e59234a66f7dc65bdfda838e40001b5
| * | Fix qplugin autotest on WindowsJoerg Bornemann2016-06-081-23/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since Qt 5.0.0 we never built the test plugins on Windows, because we checked for the existence of QtCore[d]4.dll, and the actual test does not complain if it cannot find any plugins. Use the right conditions to check for debug/release Qt builds on Windows. Use subdirs dependencies on every platform and then actually pass the right variable to SUBDIRS. Clean up the pro file while we're at it. Change-Id: I099f30afd445fbf43dc5677d256ffe55b27639b3 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
| * | Revert "Insignifify qfileinfo on Windows, like QDir".Friedemann Kleint2016-06-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 55655abfaf1fbe09af2eedfde413e862bc6c85e2. The crashes in release mode cannot be locally reproduced. Change-Id: I4e7b1defbeac5d5512b2fa82a367d2e04e3c37a4 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * | Revert "Insignifify qdiriterator test"Friedemann Kleint2016-06-081-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b373d183de4249c938935ff357c50c415b69f247. The crashes in release mode cannot be locally reproduced. Change-Id: I38ff5e9e045cff0e94e24ca07fb6e18e88b677c7 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * | Re-enable tst_QDir on Windows.Friedemann Kleint2016-06-081-2/+0
| | | | | | | | | | | | | | | | | | | | | Partially revert f3939d943ed132eaf3daead797d961c3ffbc31a5. Change-Id: I67e4d8973bc18d9cd77750c6379221d34e9484b3 Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
| * | Add support for 8bit encodings not ASCII compatible in QXMLStreamWriter.Luca Bellonda2016-06-081-0/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When using a 8 bit encoding to write a file, a test discovers if the encoding is really ASCII compatible by examining a letter and one of the XML reserved characters. EBCDIC, in the current base, was not well handled. [ChangeLog][QtCore][QXmlStreamWriter] Fixed a bug that prevented the generation of valid XML files when using encoding with 8 bit per character but not ASCII compatible. QXMLStreamWriter generated XML markup using always ASCII in this case. Change-Id: I9c86a122dd91b2290d50c358638442f99777d4ae Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | QDebug: fix streaming of QCharsMarc Mutz2016-06-081-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 9ef3ff30 introduced a new function, putUcs4(), to output QChar, char16_t, char32_t as a, possibly escaped, character literal, but got the order of stream modifiers wrong. Instead of applying the field width to the 'ucs' streaming, it applied it to the prefix '\u'. The same problem exists for the pad char, leading to the result '00\ue4' for a QChar containing ä (LATIN SMALL LETTER A WITH DIAERESIS) Fix by reordering the elements streamed so that the prefixes come last. Added a test. Change-Id: I6eaa0586501b9e780aaa3bb5dcec0e5c2f86a219 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * | tst_QFileSystemModel: Remove Win32LongFileName().Friedemann Kleint2016-06-081-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Modern SSD drives no longer have short file names enabled, causing the test to fail. Task-number: QTBUG-29403 Change-Id: I2e9866d8f8a6ed3df9d2dc6630b8cfa47ade0728 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Rewrite test tst_QDir::cdBelowRoot() to be data-driven.Friedemann Kleint2016-06-081-28/+35
| | | | | | | | | | | | | | | | | | | | | | | | Limit the macro #ifdefery and allow for more test cases. Task-number: QTBUG-53712 Change-Id: I2c185efc7c3b8fcd0217d2021bd98ab6044b5aee Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Enable testStyleOptionInit for all styles and fix affected styles.Hannah von Reth2016-06-061-6/+3
| | | | | | | | | | | | | | | Change-Id: I7cb759445342ecb58d5187ddd4a22e41fdea084a Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
| * | Fix race condition in tst_QDBusConnection::pendingCallWhenDisconnectedThiago Macieira2016-06-061-9/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test sent a message and hoped that the "delete server" would cause the server object in the QDBusConnectionManager thread be deleted before it could receive and process the message. That's racy, because on some CI machines, it did and then sent back an error reply indicating the object sought was not found. Instead, let's use a child process that we can kill to make it exit at the right time. I've chosen to use dbus-daemon itself, because that lets us test the actual conditions that triggered the original bug: the daemon getting killed during a desktop session shutdown on Linux. Change-Id: I87e17314d8b24ae983b1fffd1454483aea87c921 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | | Diaglib: Add class LogWidget.Friedemann Kleint2016-06-094-4/+277
| | | | | | | | | | | | | | | | | | | | | | | | | | | Add a class to display debug messages, providing convenience functions for installing and formatting parameters like indentation. It prints a startup message containing relevant information about Qt. Change-Id: Id0a19adbb5953a6ded1a8e692f242b63748e7273 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* | | Replace qAllocMore with a pair of more useful functionsThiago Macieira2016-06-092-19/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The first is "exact", not "more": qCalculateBlockSize. It ensures that there's no overflow in multiplying, adding the header size or when converting back to an int. The second is the replacement for qAllocMore: it calculates the block size like the first, but increases the block size to accommodate future appends. The number of elements that fit in the block is also returned. Task-number: QTBUG-41230 Change-Id: I52dd43c12685407bb9a6ffff13f5da09f816e667 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-06-0617-49/+392
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf config.tests/unix/nis/nis.cpp mkspecs/unsupported/freebsd-g++/qplatformdefs.h src/corelib/tools/qdatetime.cpp src/corelib/tools/qsimd.cpp src/corelib/tools/qsimd_p.h src/network/access/access.pri src/network/access/qnetworkreplynsurlconnectionimpl.mm src/network/access/qnetworkreplynsurlconnectionimpl_p.h src/plugins/platforms/cocoa/qnsview.mm src/plugins/printsupport/windows/qwindowsprintdevice.cpp tests/auto/corelib/kernel/qobject/tst_qobject.cpp tests/auto/network/access/qnetworkreply/BLACKLIST tests/auto/widgets/widgets/qopenglwidget/BLACKLIST Change-Id: I4b32055bbf922392ef0264fd403405416fffee57
| * | Diaglib: Extend class information for QWidget dumps.Friedemann Kleint2016-06-041-2/+44
| | | | | | | | | | | | | | | | | | | | | Output the class hierarchy until a base class within QtWidgets is found. Change-Id: I0ecee22e2ead1dea8b39cce8ca2f0739290aac22 Reviewed-by: Alexandru Croitor <alexandru.croitor@theqtcompany.com>
| * | tst_QTemporaryFile: Run in temporary directory.Friedemann Kleint2016-06-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | The test leaks a file (named qt_...xxx) in QDir::tempPath(). Moreover, when tests fail, it can happen that more files are leaked and subsequent runs do not recover since the check for non-existence of those files fails. Change-Id: Iaea6d09ee7c271903a1b9c63e263c19f9e90bba9 Reviewed-by: David Faure <david.faure@kdab.com>
| * | Remove tst_QWidget::immediateRepaintAfterShow().Friedemann Kleint2016-06-041-20/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It tested whether a paint event was received when calling QWidget::repaint() right after QWidget::show() without waiting for the window to be exposed. This caused a QEvent::UpdateRequest to be sent, which ended up in QWidgetBackingStore::sync() which returns after checking QWidgetBackingStore::discardSyncRequest(), since Qt::WA_Mapped is not set on the non-exposed widget. The test passed on Windows since it contains one call to QCoreApplication::processEvents() which causes the the initial WM_PAINT message to be processed in QWindowsWindow::handleWmPaint() which calls QWindowSystemInterface::flushWindowSystemEvents() and causes Qt::WA_Mapped to be set. This seems counter to the intention of the test. Remove the test since it won't pass anymore in Qt 5 unless Qt::WA_Mapped is set. Task-number: QTBUG-26424 Task-number: QTBUG-38327 Task-number: QTBUG-39842 Change-Id: Iede026d52825dcf1f2e9014a316d26d260309214 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Blacklist modalDialogClosingOneOfTwoModal on OS XMorten Johan Sørvig2016-06-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | Passes locally (on 10.10), but seems to have become unstable on the CI system. Task-number: QTBUG-53790 Change-Id: I0432fca4121b97bcdd6cec529fc4e148dfb8c1ab Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * | Merge remote-tracking branch 'origin/5.6.1' into 5.6Liang Qi2016-06-021-0/+1
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This merge also blacklists a flaky tst_QGL::clipTest test on OpenSUSE 13.1. Conflicts: src/network/socket/qnativesocketengine_winrt.cpp tests/auto/opengl/qgl/BLACKLIST Task-number: QTBUG-53133 Change-Id: I14b431aa5a189b7dd1d3e2dfff767d15df20fde3
| * | | Blacklist tst_QOpenGLWidget::stackWidgetOpaqueChildIsVisible test.Alexandru Croitor2016-06-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | It fails randomly on Windows, possibly due to timing issues. Change-Id: I0ef74f203455eb4ea8aeee4c8fc9bf1fbf6fb8ff Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * | | Don't alter input string in QTextLayout with ShowLineAndParagraphSeparatorsEskil Abrahamsen Blomfeldt2016-06-011-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When ShowLineAndParagraphSeparators was set, we would replace the separator character in the user's string in some cases, since we never detached from the input string and just const_cast the pointer to the shared buffer. [ChangeLog][QtGui][Text] Fixed bug where a QTextLayout with ShowLineAndParagraphSeparators would modify the layout's input string. Task-number: QTBUG-42033 Change-Id: I92f9100b750f16e52b38b718245c13e5c4a0ebb9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
| * | | Fix bugs causing Thin font weights to be ignored or mishandled.Jake Petroules2016-06-011-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-53196 Change-Id: If12b3cab3d8de5e0e452fca844b0a484c29e9e86 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | | tst_QPlainTextEdit/tst_QTextEdit: Do not output unprintable characters.Friedemann Kleint2016-05-312-12/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The test selectWordsFromStringsContainingSeparators() duplicated in boths tests caused tab and Nbsp characters to be output to the log, which upsets editors. Use an array of ushort instead of a wasteful QStringList and output the hex codes for the unprintable characters. Change-Id: I08724268f376b4c0da492b4109570e44f7d4a3fb Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
| * | | Fix opaque texture-based widgets not being always shown.Alexandru Croitor2016-05-301-0/+133
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Whenever a regular QWidget contains a child render-to-texture widget (like a QOpenGLWidget) that is opaque (attribute Qt::WA_OpaquePaintEvent is set) and completely covers the parent geometry, the child widget would not be shown. This happens because QWidgetBackingStore::doSync contains a check to see if an opaque child completely covers its parent, in which case it does not draw the parent, and only draws the child. This is an issue if the widget is actually a texture-based one, because for it to be seen on screen, the parent widget has to be redrawn with a proper blending mask, so that the rtt widget gets properly composed into the place where the mask is. The fix consists in keeping the parent widget being marked dirty, in case it has an opaque texture-based child that completely covers it. This will force a redraw of the parent widget with a proper blending mask. Change-Id: If1feec04b86bff2c49158b8d72f175cec252dea1 Task-number: QTBUG-52123 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
| * | | Fix crash when connecting a non-PMF with Qt::UniqueConnection...Thiago Macieira2016-05-301-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...if a PMF connection had already happened. Since UniqueConnection isn't implemented for non-PMFs (functors and lambdas aren't comparable, even if static member functions or non-member functions are), we pass a null pointer for comparison argument. The disconnect() code already protected against a null pointer there, but not the connect code path with Qt::UniqueConnection Change-Id: I87e17314d8b24ae983b1fffd145324beced0494d Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Dario Freddi <dario.freddi@ispirata.com>
| * | | Force the use of the C++11 alignof keyword instead of an extensionThiago Macieira2016-05-291-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the compiler supports C++11 alignof, let's use it. No point in perpetuating the use of __alignof__ or __alignof. There's a fallback implementation in qglobal.h that works even without compiler extensions. We can't drop it just yet (alignas is not a required C++11 feature), but at this point I doubt that fallback is used anywhere anymore. The tst_compiler test was wrong to use alignof(variable). That's not permitted by the standard nor would it work with our fallback implementation. MSVC 2015 enforces this, but ICC, GCC and Clang don't. Change-Id: Ifea6e497f11a461db432ffff1448abfa86672c63 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
| * | | tst_QNetworkReply: Un-blacklist recently fixed test.Edward Welbourne2016-05-251-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A recent fix now makes authenticationCacheAfterCancel(http+socksauth) work again, so un-blacklist it. Added a helpful comment while I was at it. Change-Id: I2d7eae8d80c12957d22659a82e5072301735c41f Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
| * | | Fix parsing of tzfile(5) POSIX rule zone names with bracket quotesThiago Macieira2016-05-241-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | POSIX.1-2001 allows quoting a zone name so that it can contain other characters besides letters, by enclosing it in angle brackets ('<' and '>'). This hadn't been used until recently (tzdata2016b), when the Asia/Barnaul rule started using a zone name "+07" (the name variable contained the value "<+07>-7"). Thanks to Paul Eggert for reporting and investigating the root cause. Task-number: QTBUG-53071 Change-Id: Id5480807d25e49e78b79ffff1449bc410776cb66 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
| * | | Avoid missing paints when resizing GV with QOpenGLWidget viewportLaszlo Agocs2016-05-241-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There is nothing guaranteeing there will be a paint request after resizeViewportFramebuffer() is called. However we must not be left with a framebuffer with uninitialized content. So trigger an update. Include also a half-hearted autotest. QOpenGLWidget (or QGLWidget) viewports have not been autotested at all. Try to verify that it is functional at least, even if we cannot check the actual output. Change-Id: I34d78fe32e94c39dad919216b5a4f4bb2aea3cc2 Task-number: QTBUG-52419 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
| * | | QMenu auto-test: Add test for two-level tearable menusGabriel de Dietrich2016-05-191-0/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This has been fixed in 5.6.1 but we can afford the extra test to guard against regressions. The setup for this test is two menus, one parent of the other. The submenu is tearable. We open the parent menu, open its submenu and then move the mouse cursor straight over the submenu's tear-off area. The submenu should stay open even after a short delay. Change-Id: Ia8ad326d78dde31b6dd91b0ebacf0db1898715d4 Task-number: QTBUG-53068 Reviewed-by: Błażej Szczygieł <spaz16@wp.pl> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
| * | | QtWidgets: Reduce paint events when resizing native widgetBłażej Szczygieł2016-05-191-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch reduces paint events by removing code which sets native widgets dirty in QWidgetWindow::handleExposeEvent. Native widgets are also marked dirty in QWidgetPrivate::drawWidget, so it is enough for proper painting. This restores Qt4 behavior when one resize means one repaint for native widgets. Without this patch the native widget is marked as dirty on every expose event, so one repaint is from syncBackingStore and second (or more) is from marking the widget dirty explicitly. This patch improves performance of native widgets and it also reduces locks when paint event is v-synced, e.g. on OpenGL swap buffers or on any other technology like VDPAU, VA-API, etc. Added autotest for checking number of paint events for native widgets. Task-number: QTBUG-50796 Change-Id: I4e1649069e2e73d15b038fd1834d0551915252ee Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* | | | tst_QObject: Test if the new connect style works with virtual basesThiago Macieira2016-06-021-0/+107
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I87e17314d8b24ae983b1fffd1453abe1e395bbd1 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* | | | Blacklisting a flaky tst_QGL::clipTest test on OpenSUSE 13.1Milla Pohjanheimo2016-06-011-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Based on discussion with Laszlo, we are blacklisting this test. Task-number: QTBUG-53133 Change-Id: I08a5192ebcefd7b093c79872e0dfaddb794cab57 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* | | | Add manual test for shortcut using implicit AltGrRobert Loehning2016-05-301-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In German layout, "Ctrl+]" is "Ctrl+AltGr+9". Task-number: QTBUG-51848 Change-Id: I8c05c13a4d46c0818ce4f56ce476c5310a677af2 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* | | | tst_Moc: restore signals/slots/emit to the Q_UPPERCASE valuesThiago Macieira2016-05-301-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous definition of signals does not need to be "public". It may have been something else. Change-Id: Id69569111e7d4e619e22ffff144b4855e6acdbef Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
* | | | tst_qsslsocket::protocolServerSide - blacklist on RHEL 7.2Timur Pocheptsov2016-05-261-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | protocolServerSide test fails with 'ssl3-any' and 'tls1.0-any' combo on RHEL 7.2 with OpenSSL v1.0.1e-fips, it would work as OPENSSL_NO_SSL2 code-path, but OPENSSL_NO_SSL2 is not defined, so socket is in state connected while it's expected to be unconnected. Task-number: QTBUG-53608 Change-Id: Ib321b95129a6ab5b0691b40cb4acc612125633b2 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | | | tst_qsslsocket - re-structure the codeTimur Pocheptsov2016-05-261-2/+4
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | setEmptyDefaultConfiguration - this test (and this was stated explicitly in comments!) must be the last test to run, otherwise, it can make subsequent tests fail. -exitLoop must be in 'protected slots' section not to be executed as a test, since ... it's aux function, not a test. Task-number: QTBUG-53608 Task-number: QTBUG-53603 Change-Id: I49d6d57ba927ecc4f20ae2d9325ad02fa46b0922 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | | Fix compilation without process supportMaurice Kalinowski2016-05-201-0/+2
| | | | | | | | | | | | | | | Change-Id: I88ef96bf15f40e459bacc4b2abe4dfe84e257495 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>