summaryrefslogtreecommitdiffstats
path: root/tests
Commit message (Collapse)AuthorAgeFilesLines
* QJsonDocument: Avoid overflow of string lengthsJüri Valdmann2018-05-162-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The added test case contains the binary JSON equivalent of ["ž"] with the modification that the string's length has been set to INT_MAX. In Value::usedStorage this length is used through the pointer d like so s = sizeof(int) + sizeof(ushort) * qFromLittleEndian(*(int *)d); Because 2 * INT_MAX is UINT_MAX-1, the expression as a whole evaluates to 2, which is considered a valid storage size. However, when converting this binary JSON into ordinary JSON we will attempt to construct a QString of length INT_MAX. Fixed by using String::isValid instead of Value::usedStorage. This method already takes care to avoid the overflow problem. Additionally, I've tried in this patch to clarify the behavior of Value::isValid a bit by writing it in a style that is hopefully more amenable to structural induction. Finally, the test case added in my previous patch had the wrong file extension and is renamed in this one. Task-number: QTBUG-61969 Change-Id: I45d891f2467a71d8d105822ef7eb1a73c3efa67a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 8e47474baf06b3884e9173302395dd25fc09eba9) Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QJsonDocument: Validate also zero-length objectsJüri Valdmann2018-05-161-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | The added test case is the binary JSON equivalent of {"a":{"š":null}} with two modifications. First, the length of the string "š" has been corrupted to 0xFFFFFF00. Second and more import, the Base::size field of the inner object has been reset to 0. On its own the first modification would normally trigger a validation error. However, due to the second modification the Value::usedStorage for the inner object evaluates to 0, completely disabling all further validation of the object's contents. Attempting to convert this binary JSON into standard JSON will lead to the JSON writer trying to construct a QString of length 0xFFFFFF00. Fixed by validating also objects with usedStorage == 0. Task-number: QTBUG-61969 Change-Id: I5e59383674dec9be89361759572c0d91d4e16e01 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit 93e0ff037e3e4d72d404c26b8e957092d5f88652) Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* QJsonDocument: Reject objects containing themselves in binary JSONJüri Valdmann2018-05-161-0/+0
| | | | | | | | | | | | The added test case is a binary JSON file describing an array which contains itself. This file passes validation even though attempting to convert it to plain JSON leads to an infinite loop. Fixed by rejecting it in validation. Task-number: QTBUG-61969 Change-Id: Ib4472e9777d09840c30c384b24294e4744b02045 Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 3fc5500b4f2a8431ac013520e9faf606e893b39a) Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QJsonDocument::fromRawData: Fix out-of-bounds accessJüri Valdmann2018-05-162-0/+1
| | | | | | | | | | | | | | | This method takes a pointer+size pair, but begins reading through the pointer without first checking the size parameter. Fixed by checking the size parameter. A new test case is added with an empty binary json file. Although the test does not fail under normal conditions, the problem can be detected using valgrind or AddressSanitizer. Task-number: QTBUG-61969 Change-Id: Ie91cc9a56dbc3c676472c614d4e633d7721b8481 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit d3935cbd71171e1d8f3742cc3235ca0c38313ec8)
* Make sure $$relative_path() uses an absolute path as its first argEdward Welbourne2018-05-041-2/+14
| | | | | | | | | | | | | | | | | Thanks to QTBUG-61373, this qmake function was called with /usr/local/5.10.1 as baseDir, which isn't absolute, leading to an assertion failure. We could raise the error within qmake but it proved easier to simply resolve any non-absolute baseDir using PWD, before trying to use it as an absolute path. Did the same for $$absolute_path(). Documented both. Adjusted the assert that caught this to report any non-absolute path that upsets it. Added simple tests, fixed an existing test. Task-number: QTBUG-66156 Change-Id: Icfef2e2f5b236e071177c9beffa38d71bf404292 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> (cherry picked from commit 58b373c9e3c0a7307e3fbafeb5ad710088b8e685)
* Fix crash if QPixmap::defaultDepth() is called when no QGuiApplicationEirik Aavitsland2018-04-191-0/+2
| | | | | | | | | | | This static method can be called before QGuiApplication is created. At that point there is yet no primary screen, so the implementation needs to guard against dereferencing a nullptr. Task-number: QTBUG-67309 Change-Id: I6b7b9e97b1c3c79bf2f9c6d6247c3b10f39f7a55 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 7f782e1fc41ff7694f9bf7434d5a4db0545c0413)
* Merge remote-tracking branch 'origin/5.9.5' into 5.9Qt Forward Merge Bot2018-04-111-21/+0
|\ | | | | | | Change-Id: Iee7af16c3e26dc7d7f594ebd3876370ac83a1bc8
| * Revert "Set sharedPainter correctly for QGraphicsEffect"Laszlo Agocs2018-03-201-21/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 7257862fb2edfab0219d6cd45c83677049404f7d. It has been reported that this patch causes widgets with certain effects become invisible. Task-number: QTBUG-60231 Task-number: QTBUG-66803 Task-number: QTBUG-66387 Change-Id: I9c3c4cf2f17ac639d1aee5489b665aa1e165af16 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 00304eac7b1ddd22b971da78aa84c86fe2919359) Reviewed-by: Eike Ziller <eike.ziller@qt.io>
* | qstringapisymmetry: Fix XML parsing failing on invalid encodingsFriedemann Kleint2018-03-281-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Evaluating testlib's XML output in COIN would fail with: "XML syntax error on line 7520: invalid UTF-8" for the toLatin1() tests due to some Latin1/UTF8 mixup. Add a helper function to convert the data to plain ASCII. Task-number: QTQAINFRA-1797 Change-Id: I1c64878d4c2a67b8c2689905b5ffe6707b5963c1 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit d8b143d4b77c45cfe1a40d525be5d0a79a2b07a4) Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | Revert "Blacklist tst_QWindow::testInputEvents on Windows"Liang Qi2018-03-161-2/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit fdddb3a4814f588e3ee87a6c1a0a6791f6ef0298. After b85b272c26810e54a4ceb0707cf4569f87517b67, Windows 10 (msvc2017-x86) is tested on Windows 10 (msvc2017-x86_64). The failure is gone. Task-number: QTBUG-66798 Task-number: QTBUG-66216 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 8edc08ef78202f42f373efc6f0814744b01eac9a) Change-Id: I932ccc2cc93954c006fbc863bc4ec53824afa8aa Reviewed-by: Liang Qi <liang.qi@qt.io>
* | Revert "Blacklist tst_QWindow::modalWindowEnterEventOnHide_QTBUG35109 on ↵Liang Qi2018-03-161-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | windows ci" This reverts commit a0db55040d21d17b1bba2ab406cb51c0f3a671aa. After b85b272c26810e54a4ceb0707cf4569f87517b67, Windows 10 (msvc2017-x86) is tested on Windows 10 (msvc2017-x86_64). The failure is gone. Task-number: QTBUG-66756 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit f7630bcc510861811cc7f2cb6656b4683c3c26c4) Change-Id: I65caac13bfcaa8b6fecdab7671b26d3d385949d1 Reviewed-by: Liang Qi <liang.qi@qt.io>
* | testlib: Silence all Qt logging in selftestsTor Arne Vestbø2018-03-142-1/+11
| | | | | | | | | | | | | | | | | | | | Otherwise random debug messages from Qt might mess up the expected vs actual results. Task-number: QTQAINFRA-1631 Change-Id: I855d31274f8261f8b125df23409353f7101be0e4 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 3ae03c3585df7247f5699eeaa70e1bedf47f6d5b)
* | moc: Don't error our when parsing "using namespace __identifier(...)"Andy Shaw2018-03-141-0/+1
|/ | | | | | | | | | | This follows on from a2322519929bd36a90422dccc0310b8230729197 which covered a similar instance of this. As with that change, we should not abort the compilation, just ignore it. Task-number: QTBUG-63772 Change-Id: Ide958080a90f43ed19edd8a320e7d45de1c96821 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> (cherry picked from commit 0da3ebd9940a214cc7ea292d13cd86967cd89a66)
* QHeaderView: fix inconsistent saved state, ignored during restoreDavid Faure2018-03-091-0/+53
| | | | | | | | | | | | | | | | | | This happens because QTreeView disconnects QHeaderView's _q_layoutChanged slot (!). So the stretching of the last section, done in _q_layoutAboutToBeChanged, invalidated total length, but didn't recalculate it (since that's done in _q_layoutChanged). As a result, length was inconsistent, and saveState would save that, and restoreState() would early-return, not doing anything. Let's just ensure length is always consistent, so we don't depend on the complex issue of whether _q_layoutChanged should be called or not. This an adapted backport of 4a04eea4f4 from 5.11, the unittest shows that c0e45ae851 is missing in this branch though. Change-Id: I4137a19e0a6fdf820dd53fb55e858d1d04a2c113 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com>
* Blacklist tst_QWindow::modalWindowEnterEventOnHide_QTBUG35109 on windows ciLiang Qi2018-03-051-0/+1
| | | | | | | | | Task-number: QTBUG-66756 Reviewed-by: Kari Oikarinen <kari.oikarinen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit a0db55040d21d17b1bba2ab406cb51c0f3a671aa) Change-Id: I4e49d610aad1a6a668035916c3879130d7a2d7df Reviewed-by: Liang Qi <liang.qi@qt.io>
* QHeaderView: Fix crash in layout about to changeThorbjørn Lund Martsum2018-03-021-0/+1
| | | | | | | | | | Before there was a risk looking up e.g index -1 if there were no visible sections in layoutAboutToChange. Change-Id: Ic911e4292e8e8c4892fef1c0f34cf7dccaad2bac Task-number: QTBUG-65478 Reviewed-by: David Faure <david.faure@kdab.com> (cherry picked from commit e8425f9e52c9df0ce0fbf122adff3ef6930f9961)
* Blacklist tst_QWindow::testInputEvents on WindowsKari Oikarinen2018-03-021-0/+2
| | | | | | | | | | | | Multiple recent failures on Windows 10. Task-number: QTBUG-66798 Task-number: QTBUG-66216 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> (cherry picked from commit fdddb3a4814f588e3ee87a6c1a0a6791f6ef0298) Change-Id: I774d1196eec8e4befbab87d03c43b5378bf4859d Reviewed-by: Liang Qi <liang.qi@qt.io>
* QHeaderView: Preserve settings on layoutChange with empty modelChristian Ehrlicher2018-02-221-0/+71
| | | | | | | | | | | | | | | Do not clear the settings of QHeaderView during layoutChange when the model is empty and the section count did not change. This will not work when a section is moved or a section is replaced with a new one during layoutChange. But since layoutChanged is also called on sorting, this patch ensures that the settings are not cleared in this case. This restores the behavior to the same as before 5.9.4. Task-number: QTBUG-66444 Task-number: QTBUG-65478 Change-Id: I39989cfd45b42e58f49d18ec014d3a941cadb6c9 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> (cherry picked from commit 9395f35cb18725995910531ca8b09f1d84efa96c)
* QHeaderView: properly restore hidden section size on layoutChanged()Christian Ehrlicher2018-02-221-0/+5
| | | | | | | | | | | | During (re)storing the sections within layoutChanged handling, the hidden section size was not properly stored which lead to a section size of 0 when the section was unhided afterwards. Task-number: QTBUG-66413 Task-number: QTBUG-65478 Change-Id: I0b714c7e0530a1eae82b3bb0e0dc80ed576522d0 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> (cherry picked from commit c0e45ae851c96dfebdebfd1e85b7b7eee6540bd1)
* Fix build failure of qftp testsVille Voutilainen2018-02-141-0/+1
| | | | | | | | Without this fix, a fresh clean build of 5.9 will fail. Change-Id: I69e4da382b07cc6e5e280e99478cbc3d44aa3f27 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Blacklist the positioning test on all linuxes, it fails on opensuse tooVille Voutilainen2018-02-131-2/+1
| | | | | | Task-Id: QTQAINFRA-1332 Change-Id: I38a36c42f88671430452cdde8098961b67854ae7 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Blacklist a flaky messagebox testVille Voutilainen2018-02-131-0/+2
| | | | | | | Task-number: QTBUG-66371 Change-Id: I95fff726167d9fad2e2fb47891ce357d7025d254 Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Blacklist a flaky scrollbar test on macosVille Voutilainen2018-02-121-0/+3
| | | | | | | Task-number: QTBUG-66321 Change-Id: Ib632ffad993e178305884170fdfe17809ea1e1e6 Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Skip tst_QFile::largeUncFileSupportKari Oikarinen2018-02-121-0/+9
| | | | | | | | | | | | If more than one VM tries to run the test at the same time, it times out. These sharing violations were attempted to be worked around in 1c3dc8cfb, but the workaround just leads to timeout, not success. Task-number: QTQAINFRA-1727 Task-number: QTBUG-66216 Change-Id: If8bfd60dbb6575843680971d45b1c82e5beff534 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io>
* Blacklist a flaky menubar testVille Voutilainen2018-02-091-0/+3
| | | | | | Task-number: QTBUG-66255 Change-Id: Ia7c493496c3fbd551e724853e4f70e3500a1bb74 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Blacklist tst_QtConcurrentMap::qFutureAssignmentLeakFrederik Gladhorn2018-02-091-0/+3
| | | | | | | | | | | This test was blacklisted in 5.10 on opensuse, but it fails a lot on ubuntu as well. While we are discussing a real fix for this, temporarily get this out of the way. Task-number: QTBUG-63152 Change-Id: I4f1d3b261013052636ee13eda30f94b647a43a38 Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Fix tst_QTcpServer::maxPendingConnections flakinessSami Nurmenniemi2018-02-091-1/+8
| | | | | | Task-number: QTBUG-63152 Change-Id: I5ccd07f31d47048d81e85f69e1327f4f7c760257 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Blacklist flaky casesSami Nurmenniemi2018-02-092-1/+6
| | | | | | | Task-number: QTBUG-66216 Change-Id: Iae973c1224c940752e2c3162d8c64539966ff7ac Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* Skip tst_QDBusAbstractAdaptor peer testsSami Nurmenniemi2018-02-091-0/+14
| | | | | | | | | | | The peer Tests for QDBusAbstractAdaptor are so flaky that it's very difficult to get any commits through to qtbase. Task-number: QTBUG-66216 Change-Id: I8da80f71aa832e683f72129cb2d4785425d39c00 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io> Reviewed-by: Sami Nurmenniemi <sami.nurmenniemi@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* tst_QSharedPointer: Fix termination of external processes on WindowsFriedemann Kleint2018-02-081-2/+13
| | | | | | | | | | | | | Timeouts with subsequent failures to delete the temporary directories have been observed in COIN. Previously, QProcess:terminate() was used to end the processes, which does not have any effect on console processes on Windows. Add a helper function which resorts to kill() on failure to terminate(). Change-Id: I05539d1703280d34b392f2e8ff8565b9a04d703c Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* CoreText: Make sure to keep reference to data when cloning raw font engineTor Arne Vestbø2018-02-071-0/+39
| | | | | | | | | | | | | QFontEngine::cloneWithSize() is used by QRawFont internally when switching a raw-font from one size to another using setPixelSize. For CoreText, we use a subclass of QCoreTextFontEngine to keep track of the QByteArray data of a raw-font, but failed to overload cloneWithSize, so we would lose the data whenever setPixelSize was called, resulting in missing text rendering in QtWebKit. We now retain the data as we should. Task-number: QTBUG-65923 Change-Id: I7d4186a3c32a61d48d1e9388e43f2792e8e46081 Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
* Clean-up in QDateTime's parsing of ISODate{,WithMs}Edward Welbourne2018-02-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | Actually check that there's a T where ISO 8601 wants it (instead of just skipping over whatever's there), with something after it; move some declarations later; add some comments; and use the QStringRef API more cleanly (so that it's easier to see what's going on). Simplify a loop condition to avoid the need for a post-loop fix-up. This incidentally prevents an assertion failure (which brought the mess to my attention) parsing a short string as an ISO date-time; if there's a T with nothing after it, we won't try to read at index -1 in the following text. (The actual fail seen had a Z where the T should have been, with nothing after it.) Add tests for invalid ISOdate cases that triggered the assertion. Task-number: QTBUG-66076 Change-Id: Ided9adf62a56d98f144bdf91b40f918e22bd82cd Reviewed-by: Israel Lins Albuquerque <israelins85@yahoo.com.br> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit a9c111ed8c30a5a8fec3f02244f0d5a4bd08e931)
* QHeaderView: properly restore section data after layoutChanged()Christian Ehrlicher2018-01-291-4/+9
| | | | | | | | | | | | QHeaderView is doing a complete rebuild of the sections when the layout changed because everything could have happened. But since layoutChanged is also called during e.g. sorting, the old data must be restored when possible. Task-number: QTBUG-65478 Change-Id: I088d4d843cad362b97df6dc5e0dcb9819b13547f Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Don't indefinitely wait for data if it was able to read some dataAndy Shaw2018-01-241-0/+84
| | | | | | | | | | | Passing -1 to waitForReadyRead() may cause it to wait for some time but the data retrieved may be enough for processing. So if 0 is passed from read, indicating that there is potentially more to come, then it will do a waitForReadyRead() then for more data to come. Change-Id: I75f270d1f124ecc12b18512cc20fb11f7a88f02e Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Support for Q_OS_ANDROID_EMBEDDED and android-embedded build flagsOtto Ryynänen2018-01-2035-48/+48
| | | | | | | | | | | | The Embedded Android build (Boot to Qt Android injection) is defined by having both Q_OS_ANDROID and Q_OS_ANDROID_EMBEDDED flags defined, as well as having Qt config android-embedded. This commit enables the possibility to build embedded Android builds. (i.e. Qt build for Android baselayer only, without JNI) Change-Id: I8406e959fdf1c8d9efebbbe53f1a391fa25f336a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* qmake: require a drive in a DOS path for it to be absoluteEdward Welbourne2018-01-183-21/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | For Q_OS_WIN, a path is only truly absolute if it includes a drive letter; merely starting with a slash is not enough. (We can't support UNC paths, so don't even try: qmake runs various commands in the source directory using CMD.exe, which doesn't support UNC as PWD.) This requires, when resolving a path relative to a root, transcribing the root's drive to such not-quite-absolute paths. Changed QMakeGlobals, $$absolute_path() and $$relative_path() to now use IoUtils::resolvePath() rather than delegating to QDir's absolute path method, since that doesn't correctly recognize the need for a drive letter (and qmake did run into problems with some paths, from splitPathList and a failing test, as a result). Moved existing ioUtils tests for handling of relative / absolute paths out into separate functions and expanded significantly. Fixed some existing tests to use an absolute path where one is needed; added two tests involving driveless (but rooted) paths; and fixed the test init to set a value for QT_HOST_DATA/src property (the lack of which lead to an assertion failure with this fix). Task-number: QTBUG-50839 Change-Id: I2bfc13c1bfbe1ae09997274622ea55cb3de31b43 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* Merge remote-tracking branch 'origin/5.9.4' into 5.9Liang Qi2018-01-111-24/+0
|\ | | | | | | Change-Id: Ic23e90146470d69060313628562f76a710696bab
| * Revert "QTreeView: Make sure QHeaderView is notified on layoutChanged()"Thorbjørn Lund Martsum2018-01-051-24/+0
| | | | | | | | | | | | | | | | | | | | | | | | It caused some sorting issues. This reverts commit 93dabeba9dc5f6cbab60e65b3cc8df5fe48745a9. Change-Id: Ie8c7f2d47885be6626ddb6284474a78dcf09cf33 Task-number: QTBUG-65478 Reviewed-by: Thorbjørn Lund Martsum <tmartsum@gmail.com> Reviewed-by: Christian Ehrlicher <ch.ehrlicher@gmx.de> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | macOS: Blacklist modalWindowEnterEventOnHide_QTBUG35109 instead of skippingTor Arne Vestbø2018-01-092-3/+1
| | | | | | | | | | | | | | | | | | We have the ability to blacklist tests for CI runs now. Task-number: QTBUG-35109 Change-Id: I8590e83faba764dce2d52e8c62e2e2c63f7bf219 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | QFtp: only use fall-back password for anonymous accessRyan Chu2018-01-091-2/+207
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code used to fall back to anonymous login independently for username and password; however, it should only use a fall-back password if the username is missing or (case-insensitive) "anonymous". When a non-anonymous username is given without password, we should simply skip he PASS message to FTP. If the FTP server requests a password, in the latter case, QFtp will signal authenticationRequired; in all cases, if the server rejects the given credentials, QFtp signals authenticationFailed. Either way, the client code can then query the user for credentials as usual. Task-number: QTBUG-25033 Change-Id: I2a4a3b2725819ab19c8a7e4baa431af539edcd8d Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | CoreText: Order fallback fonts based on writing system supportEskil Abrahamsen Blomfeldt2018-01-091-0/+35
| | | | | | | | | | | | | | | | | | | | | | | | After we stopped sanitizing the fallback font list (with change 6ca48a847a1805c3826004c5b989b4ae14397a37), we now need to make sure it is ordered so that the fonts that support the writing system in question are always tested first, otherwise we can end up loading a lot of fonts that will never be used. Task-number: QTBUG-65605 Change-Id: Id2a65bbff3e64e6d6e6b4f72500778ee3e811e84 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | QFileSystemModel/Windows: Make file name checking case-insensitiveFriedemann Kleint2018-01-091-1/+28
| | | | | | | | | | | | | | | | | | | | | | Introduce a special hash modeled on the one used for QFileSystemWatcher on Windows. Task-number: QTBUG-31103 Task-number: QTBUG-64147 Change-Id: I69ebabe841716e4957ae3fb04fa5c43d233a3552 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Fix license headersJani Heikkinen2018-01-091-14/+20
| | | | | | | | | | | | | | | | | | | | | | | | Old header.LGPL21 header was used at some files. Replase those with new header.LGPL one Remove old header.LGPL21 Task-number: QTBUG-57147 Change-Id: I650e39024ed4876bba27e954c7d61fdb025b46ef Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Fix fallback fonts for non-common writing systemEskil Abrahamsen Blomfeldt2018-01-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we request fallback fonts, we cannot discriminate the fonts based on the writing system support. This is especially important since common script is now merged with other scripts, meaning that a common script character will always go through the fallback mechanism when not supported by the main font. When drawing for instance a string of Devanagari characters on macOS, we would get a list of 33 fallback fonts, but almost all of them would be the default Devanagari font, since none of the other fallbacks would support that script. Meaning that we would just check the same font over and over, which makes no sense. The fallback list has been retrieved specifically for the given script, so we do not need to consider that when fetching the fonts. For most of the common set, we will not have noticed the bug, because at least one of the writing system-specific fallbacks will have had support for latin characters as well. But when trying to mix emojis and some non-common script, we would get a box in place of the emoji, which had been adopted to the main script and would only be looked for in the fonts supporting this. Note that this exposed an issue with the QRawFont test on some systems. When the sample text contained a space, it would be possible to get a fallback font for this character, since we now effectively support fallbacks. This is not the correct behavior, but it is unrelated to this fix, and it was not what the QRawFont::unsupportedWritingSystem() test was written to check. I have therefore removed the space from the sample text to make the test pass, and will make a separate task of fixing the issue of merging fonts for whitespace characters. [ChangeLog][QtGui][Text] Fixed a bug where mixing different writing systems with emojis could lead to missing glyphs. Task-number: QTBUG-61882 Change-Id: I00f6043bb01af1f2277723ccf643034aebf3e18f Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* | Revert "Blacklist tst_QDateTime::operator_eqeq"Edward Welbourne2018-01-071-3/+0
| | | | | | | | | | | | | | | | | | | | | | Remove black-listing of test; the problem was due to misconfigured time-zone on the CI system - it was on some zone that presently coincides with UTC, not actually on UTC as supposed. This reverts commit 597b96b8fa2fc8b9331db8ecc85d742be83fbec5. Change-Id: I72ad1dfa38532362c05aef33cd874f7f79879a41 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* | tst_QUdpSocket - unblacklist tests on Ubuntu 16.04Timur Pocheptsov2018-01-052-4/+19
|/ | | | | | | | | We use QSKIP instead for kernel versions [4.6, 4.13). Task-number: QTBUG-65440 Change-Id: Ie764b5a4eb8a67dc2a43d4dc67b5d6eb772f6b2a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Joni Jäntti <joni.jantti@qt.io>
* Fix source code file permissionsSimon Hausmann2018-01-021-0/+0
| | | | | | | | Fix permissions after commit ffc8409aa58c04c1dd140001976b55925ac959f6 - our source files are not executable. Change-Id: Idc5103704256b6f73857b645c323492beaabe879 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Blacklist tst_QUdpSocket on Ubuntu 16.04Joni Jantti2017-12-271-0/+5
| | | | | | | | | tst_QUdpSocket::broadcasting and tst_QUdpSocket::pendingDatagramSize fail on the new Ubuntu 16.04 clean template. Task-number: QTBUG-65440 Change-Id: I0e973b9c90b7c5827406bac8138370b61992a115 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* Blacklist tst_QDateTime::operator_eqeqJoni Jantti2017-12-271-0/+3
| | | | | | | | | This autotest fails on the new Ubuntu 16.04 template with UTC timezone in the system settings. Task-number: QTBUG-65435 Change-Id: I397f01ab3fed354a4eeec8b05415226a75fce5a1 Reviewed-by: Tony Sarajärvi <tony.sarajarvi@qt.io>
* qfloat16: NaN is not infiniteThiago Macieira2017-12-271-0/+2
| | | | | | Change-Id: I39332e0a867442d58082fffd1502b7010424f0f8 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>