summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Check for QImage allocation failure in qgifhandlerEirik Aavitsland2018-08-071-1/+6
| | | | | | | | | Since image files easily can be (or corrupt files claim to be) huge, it is worth checking for out of memory situations. Change-Id: I635a3ec6852288079fdec4e14cf7e776fe59e9e0 Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 2841e2b61e32f26900bde987d469c8b97ea31999)
* Fix crash in qppmhandler for certain malformed image filesEirik Aavitsland2018-08-071-1/+1
| | | | | | | | | | | The ppm format specifies that the maximum color value field must be less than 65536. The handler did not enforce this, leading to potentional overflow when the value was used in 16 bits context. Task-number: QTBUG-69449 Change-Id: Iea7a7e0f8953ec1ea8571e215687d12a9d77e11c Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit 8c4207dddf9b2af0767de2ef0a10652612d462a5)
* Doc: Fix wrong link in QFont documentationPaul Wicking2018-08-061-1/+1
| | | | | | | Task-number: QTBUG-62072 Change-Id: I587534fc5723b3d198fe2065fbcf1bee4871a768 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit ae289884db05cbaac71156983974eebfb9b59730)
* QJsonDocument: Make emptyObject an objectJüri Valdmann2018-08-062-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A default-constructed QJsonObject has no data payload, it is only a pair of null pointers. So, when it becomes necessary to 'materialize' such an object, a special global emptyObject constant is used as the substitute payload. There is a small problem with this global constant though, namely that it's is_object flag is unset. In other words, the emptyObject is not an object, but an array. Fix by setting the is_object flag on emptyObject. The example code in the bug report QJsonObject parent; QJsonObject child; parent["child"] = child; // 1 child = parent["child"].toObject(); // 2 child["test"] = "test"; // 3 runs into this problem on line 1. Inserting the default-constructed child means inserting a copy of emptyObject. On line 2 a pointer to this copy of emptyObject is retrieved and cast to an object. But it's not an object, it's an array, so things go wrong hereafter. Specifically, on line 3, two inserts are performed, one from operator[] and one from operator=. Each insert increments a compaction counter. The second insert triggers compaction (QJsonObject::insert calls Value::requiredStorage calls Data::compact) and compaction branches based on the is_object flag. Replacing line 3 with child.insert("test", "test"); causes the example to appear to work since compaction is not triggered and the JSON serializer does not look at the is_object flag. Still, any further insert() calls would trigger compaction and memory corruption. Task-number: QTBUG-69626 Change-Id: I8bd5174dce95998bac479c4b4ffea70bca1a4d04 Reviewed-by: Lars Knoll <lars.knoll@qt.io> (cherry picked from commit f43e947dc405b6a2324656f631c804db8e8dec3d)
* Doc: Update really old screenshot in Sliders ExamplePaul Wicking2018-08-041-0/+0
| | | | | | | Task-number: QTBUG-63248 Change-Id: Id756d86539987562b9455881364928ccf7349fbf Reviewed-by: Martin Smith <martin.smith@qt.io> (cherry picked from commit 87704611151af78cfef17ae518c40bfb49c7b934)
* Doc: Update out-of-date image in QColorDialog documentationPaul Wicking2018-08-041-0/+0
| | | | | | | Task-number: QTBUG-58420 Change-Id: Ib5c7a3f681b082182cf6ec9aa62028b7040e81bf Reviewed-by: Martin Smith <martin.smith@qt.io> (cherry picked from commit c6cca0f492717582cb113f3d62e97f554798cf14)
* Doc: Synchronize documentation with code snippetPaul Wicking2018-08-021-3/+3
| | | | | | | | | | | | * The plugin IID with version number was removed in transition to new plugin system, see efde205586a70320d0525e941e5a1cd9657bdd30. * This change re-adds the version number, so that we deliver on the best practices as mentioned in the documentation for the example. Task-number: QTBUG-59487 Change-Id: I88596e71cf18be88d0b1d28d56b6d3bb72fe756b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit 0dfdf23d05d09cbffcec4021c9cbebfb6eeddfa7)
* Doc: Remove reference to QTestEventPaul Wicking2018-08-011-5/+2
| | | | | | | | | | | QTestEventList refers to QTestEvent, which is an implementation detail that should not appear in documentation. Task-number: QTBUG-68109 Change-Id: Id132889427b757ea17165c8b15ed47bcfb9e1c3f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> (cherry picked from commit e386cd03d12e401b9e3945602e9621a86009fa11)
* Doc: Make reference to platform styles version agnosticPaul Wicking2018-07-311-4/+3
| | | | | | | | | Remove platform/version specific reference to avoid outdated docs. Task-number: QTBUG-64304 Change-Id: Ief9d5db95fa1f865fd826a6426b1621e81bdb6ce Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io> (cherry picked from commit fdb780b897fc2964dc70c286ee3102d7ce6327ea)
* Fix the copyright attribution for the HarfBuzz dependencyNicolas Ettlin2018-07-241-7/+5
| | | | | | | Task-number: QTBUG-69260 Change-Id: I03079bee5eb17f87f48690e800517831f6215975 Reviewed-by: Kai Koehne <kai.koehne@qt.io> (cherry picked from commit 7d05144dde55ab0519e5dd1e441547456a28d80e)
* Update bundled sqlite to 3.24.0Kai Koehne2018-07-173-10756/+22883
| | | | | | | | | [ChangeLog][Third-Party Code] Sqlite was updated to version 3.24.0 Task-number: QTBUG-69274 Change-Id: Icf3d7b2c1af0fb67033fd39240bee0cacccaf96f Reviewed-by: Andy Shaw <andy.shaw@qt.io> (cherry picked from commit 46c2241a57d65ae6bb89e0924cadb3220e5371ef)
* Fix the copyright year of the qgrayraster.c dependencyNicolas Ettlin2018-07-121-1/+1
| | | | | | | | | | | | The copyright year of the qgrayraster.c dependency was incorrectly set to “2006-2015”, instead of 2000-2016 (as stated in the file’s header comments). This commit solves this issue. Task-number: QTBUG-69261 Change-Id: I307b6eabdd133fe4f8371b963577b59af8620838 Reviewed-by: hjk <hjk@qt.io> (cherry picked from commit 94a65fb23210a60e286de0f13a6f31af475f1950) Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Flush the initial clear blit with SCREEN_WAIT_IDLEJames McDonnell2018-07-061-1/+1
| | | | | | | | | | | Without it, the clear runs asynchronously and screen may clear pixels _after_ Qt updates them. Change-Id: I0c0844676d8a4387439a2f818ee08942ccaf6b08 Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Janne Koskinen <janne.p.koskinen@qt.io> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> (cherry picked from commit 8bcb8b069e9a35226c1465265d4d716c864dde54)
* Replace commercial preview license with Qt License Agreement 4.0Kai Koehne2018-07-054-634/+925
| | | | | | | | | | | | | | | | | | Do allow people to build from git using the Qt License Agreement 4.0. The license agreement text is the same as in the installers, except that some Unicode characters got normalized to their ASCII variants, and things have been properly wrapped. [ChangeLog][Licensing] The commercial preview license in the git checkout has been replaced by the Qt License Agreement 4.0 text. This makes it explicit that commercial customers of The Qt Company can use the git version under commercial terms. However, support is (still) only provided for builds from released branches of Qt. (cherry picked from commit 60e56f1679d69b3e7217fa77a1e2d69250ac049d) Task-number: QTBUG-52222 Change-Id: I760c1909e98f9b2d1021d5a10b20c898af3b0c00 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Fix compile with sanitize address & undefinedBogDan Vatra2018-06-261-1/+5
| | | | | | | | | | | | | On Debian 9, the sanitize library exports only dlopen symbol, but it doesn't export the other ones. We need to check all dl symbols that we use, otherwise "-ldl" will not be added to the libs list. Task-number: QTBUG-64864 Change-Id: I3e62b82985348c40b8b61302ba589d5564598e18 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> (cherry picked from commit b2d2b655e58d5337765c26dafa836b12e019c6a4) Reviewed-by: BogDan Vatra <bogdan@kdab.com>
* Merge remote-tracking branch 'origin/5.9.6' into 5.9Qt Forward Merge Bot2018-06-132-1/+47
|\ | | | | | | Change-Id: I5364773559d785e3807f6152d69e29484a0e2f37
| * xcode: Take effective platform name into account for configuration build dirv5.9.6Tor Arne Vestbø2018-06-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default value for CONFIGURATION_BUILD_DIR includes EFFECTIVE_PLATFORM_NAME, but when overriding it in 554e44b77 we only used the CONFIGURATION variable. This left the .app in iOS builds in Debug instead of Debug-iphoneos, breaking deployment from within Qt Creator, which had this directory hard-coded. We now include EFFECTIVE_PLATFORM_NAME to restore the original destination for the .app bundle. Task-number: QTBUG-68705 Change-Id: If304193d3e351e19fb84d250a62ae331af6966c6 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> (cherry picked from commit 689a071e843dfbac49901018ba3c49b08e22fd94) Reviewed-by: Antti Kokko <antti.kokko@qt.io> Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
| * Add changes file for Qt 5.9.6Antti Kokko2018-06-011-0/+46
| | | | | | | | | | | | Change-Id: I8f342db47d12a835a8698265c68f3906298e82ad Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | Bump versionOswald Buddenhagen2018-05-311-1/+1
| | | | | | | | Change-Id: I2ed230e8761402afd475665b3be708fd515367e5
* | VNC plugin: explicitly cast int to uint16_t before calling htonsShawn Rutledge2018-05-251-3/+3
| | | | | | | | | | | | | | | | | | | | Otherwise there is a -Werror=narrowing error on big-endian architectures (where htons does nothing). Task-number: QTBUG-68390 Change-Id: Idb204a81aaedb9f4fde1d5fae406da36c7a1953e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit b206d1c8082a9e01ad3755d311a4cf683ec35161)
* | Configure: Restore default prefix on WindowsOrgad Shaneh2018-05-241-3/+7
|/ | | | | | | | | | | The configure unification accidentally changed it to /usr/local as used on unix. Use C:/Qt again. Task-number: QTBUG-61373 Change-Id: I758c639bdb07c97b55f990821e73a5135038f4a0 (cherry picked from commit fe19527a4347dfbf39bc9073ff26a9f5a28930c0) Reviewed-by: Orgad Shaneh <orgads@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* QJsonDocument: Avoid overflow of string lengthsJüri Valdmann2018-05-163-23/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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-162-2/+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-162-3/+3
| | | | | | | | | | | | 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-164-1/+5
| | | | | | | | | | | | | | | 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)
* macOS + FreeType: Properly distinguish memory fonts from file fontsTor Arne Vestbø2018-05-151-6/+5
| | | | | | | | | | | | | | | | | | In recent macOS versions the descriptor created from the function CTFontManagerCreateFontDescriptorFromData() will contain the NSCTFontFileURLAttribute with a value such as: file://iNmEmOrYcGfOnT_0x101d3c3a0#postscript-name=New Which means we can't use the presence of the kCTFontURLAttribute to determine that we're dealing with a file font. Instead we check for our custom kQtFontDataAttribute first, which is only set for memory fonts. Task-number: QTBUG-68044 Change-Id: Ie87d06b5a9e0e251305200b717f18ef68ccc6abc Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io> (cherry picked from commit 43ea15d01cd491639d8cb5eb85da066f5d0a8571)
* Fix build without features.timezoneTasuku Suzuki2018-05-151-0/+4
| | | | | | Change-Id: I3f8421103afa61baf415636b4dc8cf93fb477bcc Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> (cherry picked from commit 8f7dcba204d21444cb0bd00f13fc496bb9420484)
* Windows/QSaveFile: Fix locking issues on Dropbox drivesFriedemann Kleint2018-05-143-5/+13
| | | | | | | | | | | | | | | Add a flag to QTemporaryFileEngine causing the file to be opened in non-shared mode, preventing renaming failures caused by the Dropbox driver accessing it. Task-number: QTBUG-57299 Change-Id: Id7afc3559fd15784d4166efbbd057d592b5e0ab2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit fe5edcee602f0ab2912bbdd1a21f4309ed7dbfd6) Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io> Reviewed-by: Kai Pastor <dg0yt@darc.de>
* Make sure $$relative_path() uses an absolute path as its first argEdward Welbourne2018-05-044-9/+32
| | | | | | | | | | | | | | | | | 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)
* qmake: Don't map Xcode SYMROOT to output directoryTor Arne Vestbø2018-05-031-1/+11
| | | | | | | | | | | | | | | | | | The output directory may be the same as the source directory in the case of an in-source build, but Xcode treats the SYMROOT as a build directory, and automatically excludes it from Time Machine backups, which may result in not backing up sources. Instead we map SYMROOT to an .xcode subdirectory of the output directory, and then use CONFIGURATION_BUILD_DIR to make sure the final build targets end up where they used to. Task-number: QTBUG-52474 Change-Id: I3852ca9088e75ca62fca4c1217b5485175d9436f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> (cherry picked from commit 7c3053b301a70b04f5ab4ed9c3f3a6c84cb89616) Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix crash if QPixmap::defaultDepth() is called when no QGuiApplicationEirik Aavitsland2018-04-192-1/+9
| | | | | | | | | | | 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)
* macOS: Fix standardLocations() returns invalid pathMasashi Fujimoto2018-04-161-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | The file path included in the return value was incorrect when giving the following value to the argument of "QStandardPaths::standardLocations()". - QStandardPaths::AppDataLocation - QStandardPaths::AppLocalDataLocation - QStandardPaths::DataLocation The function to obtain the path to <AppName>.app changed from CFURLCopyPath() to CFURLCopyFileSystemPath() by commit id c0da37a806dc0457636d787331e9f50778ee8b3e. CFURLCopyPath() returns a value with a path delimiter appended at the end, but CFURLCopyFileSystemPath() is not. This is a commit to append '/' to the end of the return value of CFURLCopyFileSystemPath(). Task-number: QTBUG-61159 Change-Id: Icaebdf09d9cdf992d59c16a398dfe666e6225f99 Reviewed-by: Jake Petroules <jake.petroules@qt.io> (cherry picked from commit aebc9023bb0acb9697540b444a6dfae95b762644) Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* QCoreTextFontEngine: Fix build with Xcode 9.3Gabriel de Dietrich2018-04-121-1/+1
| | | | | | | | | | | | | | | Apple LLVM version 9.1.0 (clang-902.0.39.1) Error message: .../qfontengine_coretext.mm:827:20: error: qualified reference to 'QFixed' is a constructor name rather than a type in this context return QFixed::QFixed(int(CTFontGetUnitsPerEm(ctfont))); Change-Id: Iebe26b3b087a16b10664208fc8851cbddb47f043 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> (cherry-picked from commit dbdd5f0ffbce52c8b789ed09f1aa3f1da6c02e23) Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Merge remote-tracking branch 'origin/5.9.5' into 5.9Qt Forward Merge Bot2018-04-115-27/+130
|\ | | | | | | Change-Id: Iee7af16c3e26dc7d7f594ebd3876370ac83a1bc8
| * Add changes file for Qt 5.9.5v5.9.5Antti Kokko2018-04-041-0/+122
| | | | | | | | | | Change-Id: I6de04b86f01467c326bf3194fe0bf432d1ee9f9b Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
| * QFusionStyle: Fix compilation when qreal is floatAlexander Akulich2018-03-201-4/+4
| | | | | | | | | | | | | | | | Change-Id: I575d348915a7239a40b589012b4e9707bd15d1dd Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> (cherry picked from commit 53f82185e9320e0561d5a424d7145aadc18cca30) Reviewed-by: Yulong Bai <yulong.bai@qt.io>
| * Revert "Set sharedPainter correctly for QGraphicsEffect"Laszlo Agocs2018-03-202-23/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| * Merge 5.9 into 5.9.5Oswald Buddenhagen2018-03-1437-128/+166
| |\ | | | | | | | | | Change-Id: I327bacd544f874da37c4e0740af0c7854d74a913
| * | Fix QLabel crash if buddy's lifetime is too shortSergio Martins2018-03-121-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If buddy is deleted then QLabel will still try to deliver the shortcut event to it, in QLabel::event(), and crash. For this cherry-pick removed all nice-to-haves and only fixed dereferencing the null pointer. Task-Id: QTBUG-66841 Change-Id: Ib6a36a9f99cee31afe1f88eb77f5b6cafb8b1086 Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com> (cherry picked from commit c082d84d5d7fdbfb64de18f06a8ddbc77f2e6de4) Reviewed-by: Christoph Schleifenbaum <christoph.schleifenbaum@kdab.com> Reviewed-by: Milian Wolff <milian.wolff@kdab.com>
* | | Fix integer overflow (1 << (' ' - 1))Mikhail Svetkin2018-04-101-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On platforms where integer by default is int32(max is 2147483647) and (1 << (' ' - 1)) will be 2147483648 Change-Id: I790d33bd4e473925d6897dd87cbffdfe8dd7938f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> (cherry picked from commit 28f9b35b35e7c9964f22f4e28aac9c6093401900)
* | | Fix integer overflow (1 << 31)Mikhail Svetkin2018-04-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On platforms where integer by default is int32(max is 2147483647) and (1 << 31) will be 2147483648 Change-Id: I59ccb5344d5ad7d085f01bbc7cebdf6152ff7755 Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> (cherry picked from commit f5a624c9b94455bebd7eb8fabbb300c4793fe6df)
* | | Fix typoed integrity conditionKari Oikarinen2018-04-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Amends 594fe5c4636cb783bb7840efff4171e772ae906a. Change-Id: I0fb5ab79d895cfd9698db9b4a4394481299a7e1a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> (cherry picked from commit 8b9a9651d6efbd84cda476c47f962ff0a600b234) Reviewed-by: Kimmo Ollila <kimmo.ollila@qt.io> Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io>
* | | macOS: Handle NaN mouse event positionsNathan Collins2018-03-281-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When performing gestures such as Exposé or Mission Control with the mouse button down, the position of the mouse release event is returned with NaN values. This causes QGuiApplicationPrivate::processMouseEvent to be called recursively and ultimately crash. Task-number: QTBUG-67194 Change-Id: If1536bc4dc2075c498cdd6c5afe57c86bdaac13b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io> (cherry picked from commit 992f673782ac7b8edea0dc7b4498eb7f970b4ba8)
* | | 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>
* | | DBus: merge calls to set_source_files_properties() in CMake functionsRolf Eike Beer2018-03-261-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | This can handle multiple files at once just fine. Change-Id: I9dcf7b0c72df432f02200ac7f3967f36a408f306 Reviewed-by: David Faure <david.faure@kdab.com> (cherry picked from commit 25956a1e7cef0fef39c94638b44c07457b452d00) Reviewed-by: Kevin Funk <kevin.funk@kdab.com>
* | | Cocoa: Fix isChildNSWindow() for embedded QWindowsMorten Johan Sørvig2018-03-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit e3d21ef0 removed the manual m_isNSWindowChild mode in favor of using m_view.window.parentWindow as a declarative test. However, this test has a false positive if the QWindow in question is a non-child QWindow which is embedded in a foreign NSView/NSWindow hierarchy. In the QTBUG-56589 case m_view.window.parentWindow is some internal window in the Photos app, which is not relevant to the Qt QWindow configuration. Improve the isChildWindow() test: the QWindow must actually be a child QWindow. Task-number: QTBUG-56589 Change-Id: I0e6e262c85f47267a6165e7f98e48264b1e00069 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* | | Avoid of bounds memory reads when scaling and mirroring imagesAllan Sandfeld Jensen2018-03-232-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bounds check we had wasn't complete for mirroring cases. Task-number: QTBUG-65387 Change-Id: I5333912621c1223f83b4f1b95f2b16d12b520bd2 Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io> (cherry picked from commit 1d616e764d33da1d3435ae8ee366f6ea8af71787)
* | | Fix subpixel rendering on Windows/FreeTypeSergio Martins2018-03-231-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FT_LCD_FILTER_H wasn't defined because we weren't including the header. To fix it just remove the checks, as was done for Linux and assume sub-pixel is there. If it's not then no harm done, it won't use any. Change-Id: I76f50cb17e41621c45c03cb7d5c75c110557ea68 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit fc8fd508165c8e4dcfe0da397b63cf99f15178e3)
* | | Fix restoring geometry of dockwidgetAnna Wojciechowska2018-03-232-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In the past if the window with dock widgets was closed in maximized mode, after reopening the dock widget size was different from the original one. It was caused due to consecutive resizes of dock widgets when the window was shown. During resizing dock widget geometry restored from property file was lost. The solution was to keep restored size of dock widgets in QDockAreaLayoutInfo and use as hints for the dock layout engine. Task-number: QTBUG-16252 Change-Id: I94f4e895922063fa51150b68464fea4ddcb1d2a2 Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
* | | Windows QPA: Fix potential crash in leave event handlingFriedemann Kleint2018-03-201-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a check for window != nullptr. Amends af5c8d04fb0c9ddda58925e4862e857c78a5e563. Task-number: QTBUG-67101 Task-number: QTBUG-57864 Change-Id: I2bbbbe514fc494fd569d0932d508c53c0544f665 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> (cherry picked from commit 1cb439dc948d6e610da49331184f0a660ef57b4e)