summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* QAssociativeIterable: add find()Marc Mutz2015-01-211-1/+4
| | | | | | | | | | This is like value(), but returns an iterator instead of the value(). [ChangeLog][QtCore][QAssociativeIterable] Added find(). Change-Id: I029fc8f91cef78f718d419587a2a50ffd2bf7632 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
* Merge "Merge remote-tracking branch 'origin/5.4' into dev" into refs/staging/devSimon Hausmann2015-01-2182-212/+1217
|\
| * Merge remote-tracking branch 'origin/5.4' into devFrederik Gladhorn2015-01-2182-212/+1217
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/corelib/global/global.pri src/corelib/global/qcompilerdetection.h src/corelib/global/qglobal.h src/corelib/tools/qdatetime.cpp src/plugins/platforms/xcb/qxcbscreen.h src/plugins/platforms/xcb/qxcbwindow.h src/widgets/dialogs/qcolordialog.cpp src/widgets/dialogs/qcolordialog_p.h tools/configure/configureapp.cpp Change-Id: Ie9d6e9df13e570da0a90a67745a0d05f46c532af
| | * windowflags test: Fix showing which flags are setSérgio Martins2015-01-191-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The text edit that shows which flags we have set should be updated in PreviewWindow::setWindowFlags() and PreviewWidget::setWindowFlags() but QWidget::setWindowFlags() isn't virtual so only the base class one was called. Change-Id: I5c9d47d003d5701dde1ab63df0d349f641d66f44 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Fix a crash in QPlainTextEdit::documentChangedPierre Rossi2015-01-191-0/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The layout for an invalid block is very likely to be null, it shouldn't be accessed without checking the block's validity first. We can make the check a bit more conservative and simply check that the block isn't empty. Change-Id: Ic1459a6168b1b8ce36e9c6d019dc28653676efbe Task-number: QTBUG-43562 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| | * Fix QPrinter::setPaperSize regression when using QPrinter::DevicePixelDavid Faure2015-01-191-1/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QPageSize-based refactoring led to casting DevicePixel to a QPageSize::Unit value of 6 (out of bounds). And then the switch in qt_nameForCustomSize would leave the string empty, leading to "QString::arg: Argument missing: , 672" warnings. Change-Id: I85e97174cc8ead9beccaaa3ded6edfad80f8e360 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Andy Shaw <andy.shaw@digia.com>
| | * Autotest: Selftests fail in UTC timezoneRainer Keller2015-01-195-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Selftests for testlib fail when executed in UTC timezone because local and UTC are the same, but expected to be different. A custom timezone is used instead. Debug output of qCompare does only handle local and non-local timezones, using new Qt5 features allows to show the correct timezone in format string. Change-Id: I753884a12370952b7b62a90d62896db4f2d3d1b4 Reviewed-by: Jason McDonald <macadder1@gmail.com>
| | * Diaglib/Event filter: Output application state on focus events.Friedemann Kleint2015-01-161-4/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | Output the current active/modal/popup windows when receiving FocusAboutToChange or FocusIn events. Task-number: QTBUG-42731 Change-Id: Ia88e9a9b41f7c80fb7a2a048b06da56d989ff18a Reviewed-by: Shawn Rutledge <shawn.rutledge@digia.com>
| | * Correction on bound values in case of repeated QSqlQuery::execBatchEric Lemanissier2015-01-161-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Until now, QSqlQuery::execBatch did not call resetBindCount, which lead the next call to QSqlQuery::addBindValue to start at non zero index. This is problematic in case of a prepared query which is called several times. Task-number: QTBUG-43874 Change-Id: I1a0f46e39b74d9538009967fd98a269e05aac6f2 Reviewed-by: Mark Brand <mabrand@mabrand.nl>
| | * Android: Fix QLayout testsEskil Abrahamsen Blomfeldt2015-01-163-0/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test requires test data to be available and the testRetainSizeWhenHidden test assumes that a widget will be sized based on its sizeHint(), which does not work on platforms where show() implies showMaximized(). Change-Id: I9bf372d8c0ea94845ae08481ec555fe25dcfebc0 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QDirModel testsEskil Abrahamsen Blomfeldt2015-01-163-3/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This test needs to have a test environment available on the regular file system, so we create this when initializing the test. In addition we QEXPECT_FAIL one of the tests which seems to expose a legitimate bug. A bug report has been created for this. Change-Id: I7c90aea78a067815cb647a51db5d91a652a9fc1c Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QSideBar testEskil Abrahamsen Blomfeldt2015-01-161-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On Android, the HOME and TMPDIR environment variables both point to the application sandbox, whereas the QSideBar test assumed they were different. We work around this simply by creating a new directory and using this as the test dir in place of the home directory. Change-Id: I67e01926b901ddf237b05aff116d30b6c7885535 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Skip QProcess_and_GuiEventLoop testEskil Abrahamsen Blomfeldt2015-01-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | This requires building a command line tool and running it using QProcess, which is not a supported deployment option on Android. Change-Id: I795374bf809a8e4d8634a55f5ebf1699ee9745d1 Reviewed-by: Christian Stromme <christian.stromme@theqtcompany.com>
| | * Fix QRawFont test when used with bundled FreeTypeEskil Abrahamsen Blomfeldt2015-01-161-19/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The auto-hinter in the FreeType version bundled in Qt gives slightly different advances on some glyphs. As noted in the removed code, this was already observed on Windows and QNX, and recently also on Android. I'm sure it could also happen on platforms using the system library if the system library was the same version as the one bundled in Qt. Instead of expect-failing the test, we simply accept both the observed results as valid. Note that we need to accept 9 as a result for the default hinting preference on all platforms, not just Windows, since the default hinting preference in FreeType can be a system setting. Change-Id: I3cc0f33f0f66dd64419770b37c10dee457706b5e Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| | * Android: Fix QImageReader testEskil Abrahamsen Blomfeldt2015-01-162-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The files for the test have to be included in a qrc to be available on Android. Most of the image files are already in a qrc, but a couple were missing. We add this in a separate qrc to avoid interfering with the tests on other platforms. Change-Id: Ibb24f5015a1aba4d5622e14f7aae80bc18611ec4 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Autotest: Find all autotests due to changed naming conventionsRainer Keller2015-01-161-27/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | The algorithm searches for all executables in search path starting with "tst_". Tests are not named like the folder they are contained in anymore. Change-Id: I360f293e43e30292fe0ae6230fd3ec7abf3d632d Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * Benchmarks: Build gui benchmarks only when gui module availableRainer Keller2015-01-161-1/+1
| | | | | | | | | | | | | | | Change-Id: I57fc2f09a4e31e379c256dfe3f5d7546cdcf2b4b Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
| | * Fix compilation with older MSVC: use qIsNan instead of isnanThiago Macieira2015-01-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | isnan is C99 and POSIX.1, which the older MSVC do not support. Use the Qt equivalent. Change-Id: Ic5d393bfd36e48a193fcffff13b8679cb83d12db Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Android: XFAIL a few tests in QDnsLookupEskil Abrahamsen Blomfeldt2015-01-121-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some of these tests are verifying things that are not supported on Android, so we XFAIL these cases when we see the appropriate error message. Change-Id: I8245266f061c902515bb12251521159a8e19bfb7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Fix memory leaks with QDBusServerThiago Macieira2015-01-111-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two serious mistakes: - we need to call dbus_server_free_data_slot as many times as we call dbus_server_allocate_data_slot - we need to delete the d pointer... The changes to the unit tests are simply to cause the used peer connections to be removed so they don't show up in valgrind. Change-Id: I9fd1ada5503db9ba481806c09116874ee81f450d Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
| | * QScreen manual test: use sizeHint; don't override QLineEdit text colorShawn Rutledge2015-01-093-4/+9
| | | | | | | | | | | | | | | | | | | | | | | | The window size was too small on high-DPI screens. Save the default text color instead of setting it to black. Change-Id: I78b50624110be0cb1d077d3782d421eb323f4fb0 Reviewed-by: Paul Olav Tvete <paul.tvete@theqtcompany.com>
| | * Skip incompatible QTextLayout tests when dpi-scaling is usedEskil Abrahamsen Blomfeldt2015-01-091-0/+62
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On e.g. Android, the tabs will be scaled by DPI. This breaks the logic in the QTextLayout tests for tabs. It's not possible to just scale the expected sizes either, since the whole text layout will be affected by font sizes and scaling, and it's difficult to predict where characters will land on different platforms and resolutions. To avoid breaking this test on other platforms, we just skip them when we know they will break. Since the code tested is cross-platform, this will hopefully not have any significant impact on our coverage. Change-Id: I65d6c33c9c6724665983a17f99eadcf1baedcc20 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QDataStream testEskil Abrahamsen Blomfeldt2015-01-092-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | Include test data on Android. Change-Id: Ic0890495c0bf8d2e38595585226a03073b043d57 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@digia.com> Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QTextBoundaryFinder testEskil Abrahamsen Blomfeldt2015-01-092-0/+13
| | | | | | | | | | | | | | | | | | | | | Include test data on Android. Change-Id: I35c17618d84822df126fe3462a00d3d49b1377c8 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix qpixmap test.BogDan Vatra2015-01-081-3/+25
| | | | | | | | | | | | | | | | | | | | | Add all test data to resources. Change-Id: I31b0dbb7546a15151f64523c86bf8eb687ff9ec0 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * Android: Fix qimage test.BogDan Vatra2015-01-082-0/+24
| | | | | | | | | | | | | | | | | | | | | We must add all test data to resources. Change-Id: I1b18415cd53a27bd23e51ac6b738d3ed94162ac9 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * Android: Fix some QStyle testsEskil Abrahamsen Blomfeldt2015-01-082-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | This adds the testdata to a qrc to make them available on Android. There are still some failures which might be actual errors, and which will be addressed separately. Change-Id: I1bdcfb2c6676134ca52388d49a1b2d25cf2813f9 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Make sure widget is polished before checking its fontEskil Abrahamsen Blomfeldt2015-01-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QWidget is polished when show() is called, so unless you do this first, QWidget::font() will return a default constructed QFont, and not necessarily the default specified in the platform theme. Comparing this to QPainter::font() later, which has been resolved against the platform theme font, and not the default constructed font, you can get a mismatch and a false test failure. This happened on Android. Change-Id: I41ef5b10879bbd4bb8ef8d52ecaccf5e8e894075 Reviewed-by: Gunnar Sletta <gunnar@sletta.org>
| | * Android: Fix QTemporaryFile testsEskil Abrahamsen Blomfeldt2015-01-083-9/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed a few instances of files that should be deployed to the file system. The way we do this on Android is via qrc. We also need a special case for the resources/test.txt, because QFINDTESTDATA will find this in qrc, but that's not the one we are looking for. Change-Id: I7097e8b7795b3a8fd483adad090208f295478412 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QPainter autotestEskil Abrahamsen Blomfeldt2015-01-082-0/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | The testdata needs to be in a qrc to be available on Android. Note that a single test will still fail. Since this requires a platform-independent fix, it will be committed separately. Change-Id: Ib2438a3298d81d77b7f4f240ef045aa0500d8382 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix qimagewriter test.BogDan Vatra2015-01-083-13/+35
| | | | | | | | | | | | | | | | | | | | | We must add all test data to resources. Write output data into a writable location. Change-Id: I5a1c212f6108abf2a82288a2c84cfb31eda5e101 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * QVersionNumber: test more version numbersMarc Mutz2015-01-081-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QVersionNumber will gain a small-version-number optimization, which stores sequences of less than 4 (32bit) or 8 (64bit) 8-bit signed segments inside the class instead of a QVector. Make sure the tests cover those cases, too. Change-Id: If1d875c75d284908756b305f767a7218cab5226f Reviewed-by: Keith Gardner <kreios4004@gmail.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Autotest: don't leak a socket every call to QtNetworkSettings::hasIPv6Thiago Macieira2015-01-081-0/+1
| | | | | | | | | | | | | | | Change-Id: I87e31945052233cee17460ee6f59c02ec416b27b Reviewed-by: Richard J. Moore <rich@kde.org>
| | * Prevent buffer overrun when getting the glyph imagesAndy Shaw2015-01-071-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The change 35bc3dc45aacaf36a8bdfccc7627136cc2e5b185 moved some padding out of QTextureGlyphCache into the font engines directly, however this was not done for the DirectWrite font engine so it caused a buffer overrun. Task-number: QTBUG-41782 Change-Id: I4e643159036f06c5edd8a742dc6694d517a47826 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * Make QtDBus unit tests compile with runtime dbus-1 tooThiago Macieira2015-01-067-51/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There's a change in Qt 5.4.0 that makes Qt compile with its own set of D-Bus headers, which means QT_CFLAGS_DBUS may be empty. Thus, we can't compile or link if we're using the actual libdbus-1 API to build the test. This commit makes these unit tests use the same dynamic loading mechanism. Change-Id: I56b2a7320086ef88793f6552cb54ca6224010451 Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
| | * Allow the QtDBus type benchmark to run without libdbus-1 foundThiago Macieira2015-01-061-1/+2
| | | | | | | | | | | | | | | | | | Change-Id: I1086e6cd6534dc96311e981cc9c73f501c1128ac Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
| | * Make QDBusConnection and QDBusServer return an error on default objectsThiago Macieira2015-01-061-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The error of "Not connected". This incidentally solves a crash when QDBusServer().lastError() is called but libdbus-1 couldn't be found. Change-Id: Id93f447d00c0aa6660d4528c4bbce5998d9186a8 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
| | * Autotest: fix a race condition in verifying a peer D-Bus connectedThiago Macieira2015-01-066-14/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On the unit test side, everything is sequential: we first ask for the connection, verify that it is connected, then ask the remote side via the session bus if it is connected. Unfortunately, the remote site may handle things in a different order: it may handle the incoming function call to "isConnected" before doing accept(2) on the listening socket. So, instead, make the local side block until the connection is received on the other side. On the remote, we don't block, instead we use the feature of delayed replies. Change-Id: Ie386938b8b39dd94a9d7e5913668125fb4a3c7da Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>
| | * Android: Fix QCryptographicHash testEskil Abrahamsen Blomfeldt2015-01-062-0/+11
| | | | | | | | | | | | | | | | | | | | | Include test data in qrc when building on Android. Change-Id: I611ca24fe8764eb709b6ce27e814840ea919d4f1 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QCommandLineParser testEskil Abrahamsen Blomfeldt2015-01-061-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Skip the tests that require building and deploying an external command line application, since that's not how we do things on Android, and it's really not very relevant for that platform. Change-Id: I2c1985687e25fb0cf124b1d57c8ba60e37d2ff96 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QCollator testEskil Abrahamsen Blomfeldt2015-01-061-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | On Android the POSIX implementation of QCollator is used, and this does not support setting other locales than the default. Change-Id: I25d23949341fc555e8be4f6836ae68cc8813cc46 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QChar testEskil Abrahamsen Blomfeldt2015-01-062-0/+10
| | | | | | | | | | | | | | | | | | | | | Include test data in qrc when building on Android. Change-Id: Id80623324788dac21bd5ddbeef8108f54d6bc8f7 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QByteArray testEskil Abrahamsen Blomfeldt2015-01-062-0/+10
| | | | | | | | | | | | | | | | | | | | | Include test data in qrc so it can be found on Android. Change-Id: Iaca8422120f1ef842aafeb0cc209cb9fdd70f05f Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Fix QTranslator testsEskil Abrahamsen Blomfeldt2015-01-063-1/+30
| | | | | | | | | | | | | | | | | | | | | | | | Bundle test data in qrc on Android. Extract it, as the tests expect to find it in the file system. Change-Id: I251eca3c23141a608b1cbac5ee0b7164c068f9b4 Reviewed-by: BogDan Vatra <bogdan@kde.org>
| | * Android: Check XML output and optionally stop on fail.BogDan Vatra2015-01-061-0/+41
| | | | | | | | | | | | | | | | | | | | | | | | The failures will be printed in red color. Use -f param to stop on fail. Change-Id: Ife58f9264a9ac859d739842c6d1359acde807ce7 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@theqtcompany.com>
| | * JPEG: Fix reading of EXIF orientation.Friedemann Kleint2015-01-062-9/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The orientation is unsigned short, read it as such. In JPEG-files created by Ricoh/Pentax cameras, the data is saved in Motorola format. Reading the wrong data size will produce invalid values when converting the byte order. Change-Id: I8f7c5dc5bfc10c02e090d3654aaefa047229a962 Task-number: QTBUG-43563 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
| | * Don't bind to QHostAddress::Any if we want to do IPv4 multicast opsThiago Macieira2015-01-051-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | Linux gracefully allows us to do that and treat the v6 socket as if it were v4. Other OS (notably OS X) aren't so forgiving. Change-Id: I13dd3274be2a4b13e8b1eef93cbc2dd17b648f96 Reviewed-by: Richard J. Moore <rich@kde.org>
| | * tst_QLockFile: simulate a crash betterMarc Mutz2015-01-041-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of leaking the QLockFile instance, which causes leak-checkers to emit false positives, simply call exit(), which doesn't run the destructors, yet doesn't lead to leak-checker warnings. Change-Id: Ia61010671e5218ae412e2bcf873e66255a2c5a99 Reviewed-by: David Faure <david.faure@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| | * Autotest: Forward stderr of the sub-processesThiago Macieira2015-01-025-1/+4
| | | | | | | | | | | | | | | | | | | | | So we can get the output when running with QDBUS_DEBUG=1. Change-Id: I6a6b8e0d82727c522914fb90a7ce594c86307d8f Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>
| | * Autotest: Be nicer when asking the sub-processes to exitThiago Macieira2015-01-028-17/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Instead of killing them outright (and note that terminate() doesn't work on Windows), ask them nicely to exit on their own. This way, if we run them in valgrind, valgrind gets a chance to print the leak check output and summary. Change-Id: Ib6cc8d4560ff0bf255f94980eb220e97592c00f0 Reviewed-by: Frederik Gladhorn <frederik.gladhorn@theqtcompany.com>