summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* QNetworkInterface/Unix: fix DNS eligibility of global addressesThiago Macieira2021-03-051-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][QtNetwork][QNetworkInterface] Fixed the reporting the "DNS eligibility" factor (QNetworkAddressEntry::dnsEligibility) for global IP addresses. Previously, QNetworkInterface interface erroneously reported all global addresses as eligible, regardless of whether they had already been deprecated by the OS or were temporary in the first place. From the tst_QNetworkInterface::dump output (netmask & broadcast suppressed for readability, IPv6 prefixes changed to protect the innocent, but the local part is exactly as found on my system): address 0: 192.168.26.33/24 dns-eligible preferred:33546998ms valid:33546998ms address 1: 2001:db8::800/128 dns-eligible preferred:264817000ms valid:264817000ms address 2: fd00::800/128 dns-eligible preferred:forever valid:forever address 3: 2001:db8::2f5b:342c:fc53:b9b2/64 dns-ineligible preferred:12422000ms valid:264817000ms address 4: fd00::9351:adff:333d:5c8d/64 dns-ineligible preferred:12421999ms valid:531402999ms address 5: fd00::7297:9516:fbb4:17ac/64 dns-ineligible preferred:0ms valid:445585999ms address 6: fd00::fdc8:e620:691:3b44/64 dns-eligible preferred:forever valid:forever address 7: 2001:db8::ae82:a01:5a8a:e210/64 dns-ineligible preferred:0ms valid:264816999ms address 8: 2001:db8::c673:e0a2:8927:2118/64 dns-eligible preferred:264816999ms valid:264816999ms address 9: fe80::bd89:b998:4aeb:a5d0%bond0/64 dns-ineligible preferred:forever valid:forever Prior to this commit, only address 9 was showing as ineligible. Addresses 1 and 2 come from DHCPv6 and are thus always eligible. Addresses 3, 4, 5, and 7 are temporary addresses added on account of RFC 4941 and are therefore ineligible (they have the IFA_F_TEMPORARY flag set). Note how 5 and 7 have also stopped being preferred. Address 3 is the one I see when I go to ip6.me and address 4 is the one used to reach the router. Addresses 6, 8, and 9 are the "permanent" addresses that would normally be based on the MAC address of the interface, but are actually in "stable privacy" mode for me (RFC 8064). Address 9 is the link-local one, which makes it ineligible, leaving the other two stable addresses eligible. Addresses 1, 3, 7, and 8 are global, from a DHCPv6-PD delegation from my ISP, which is why they have finite lifetime. Addresses 2, 4, 5, and 6 are from my local Unique Local Address (ULA) prefix, which is why 2 and 6 are valid forever. Pick-to: 6.1 Change-Id: If8b43dc9678c4b4ba9c1fffd1668fdcae873c6bd Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* Merge "imageviewer example: Show the color space description when loading"Friedemann Kleint2021-03-051-2/+5
|\
| * imageviewer example: Show the color space description when loadingFriedemann Kleint2021-03-051-2/+5
| | | | | | | | | | | | Change-Id: If9939676f29b9bbb43d698fb12efc42757e5c659 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge "Add documentation for Q_OBJECT_BINDABLE_PROPERTY"Andreas Buhr2021-03-051-0/+23
|\ \
| * | Add documentation for Q_OBJECT_BINDABLE_PROPERTYAndreas Buhr2021-03-051-0/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The duo Q_OBJECT_BINDABLE_PROPERTY and QObjectBindableProperty can only be documented together. The documentation is now with QObjectBindableProperty. This patch adds a documentation entry for Q_OBJECT_BINDABLE_PROPERTY which links the user to QObjectBindableProperty. Task-number: QTBUG-90511 Pick-to: 6.0 6.1 Change-Id: I9af4a99d49f4b02ee9645a2cc9a9a024a6a1a552 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Merge "Add ARM version of the "AES" qhash algorithm"Allan Sandfeld Jensen2021-03-051-0/+135
|\ \ \
| * | | Add ARM version of the "AES" qhash algorithmAllan Sandfeld Jensen2021-03-051-0/+135
| |/ / | | | | | | | | | | | | Change-Id: Ia2c20e970a0149efb7665a5690538f83965e7be7 Reviewed-by: Erik Verbruggen <erik.verbruggen@me.com>
* | | Merge "Fix warning about virtual override"Andreas Buhr2021-03-051-1/+1
|\ \ \
| * | | Fix warning about virtual overrideAndreas Buhr2021-03-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: Ia9928c8ef5d1597e55f45c67c462c1e9756ee899 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io>
* | | | Merge "Add more QDateTime test-cases close to the epoch"Edward Welbourne2021-03-051-1/+13
|\ \ \ \
| * | | | Add more QDateTime test-cases close to the epochEdward Welbourne2021-03-051-1/+13
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The prior tst_QDateTime::setMSecsSinceEpoch(-1) testcase was the last millisecond of 1969; which (deep in the relevant function) actually uses time_t 0 (with the -1 ms offset taken aside to be put back later); so add the matching -1 second test. At the same time, add +1ms and +1s checks for symmetry. Change-Id: Ib487305f6ad81b55563ea59926cae13fb1fde592 Reviewed-by: Andreas Buhr <andreas.buhr@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | | Merge "qtypeinfo: make variable templates inline"Fabian Kosmale2021-03-051-14/+19
|\ \ \ \ | |_|_|/ |/| | |
| * | | qtypeinfo: make variable templates inlineFabian Kosmale2021-03-051-14/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | And refactor the TMP to use std::conjunction and use variable template specialization instead of template class specialization for the base cases. Change-Id: Iea6a03f13ea3443a0fa7365af21c496670c1e07f Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* | | | Merge "Make qdecompresshelper archive bomb check only trigger for large files"Øystein Heskestad2021-03-054-0/+50
|\ \ \ \ | |_|_|/ |/| | |
| * | | Make qdecompresshelper archive bomb check only trigger for large filesØystein Heskestad2021-03-054-0/+50
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is to avoid false positives. By default files are large if uncompressed size > 10 MB. Only configurable internally. Also add auto tests. Task-number: QTBUG-91392 Pick-to: 6.0 6.1 Change-Id: I32258cb7c957f2a23a05157ba4ed5c0af2ba585e Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* | | Merge "Simplify code, remove redundant condition"Wang Yicun2021-03-053-15/+11
|\ \ \
| * | | Simplify code, remove redundant conditionWang Yicun2021-03-052-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 'clazz || (!clazz && isCached)' is equivalent to 'clazz || isCached' Done-with: Tang Peng <tangpeng@uniontech.com> Pick-to: 6.1 Change-Id: Ie9eab4a94a61be2b360f64980c4666a622f3a209 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
| * | | Doc: Fix section titles that confuse QDoc's autolinkerPaul Wicking2021-03-051-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes: QTBUG-91620 Pick-to: 6.1 6.0 Change-Id: I7c407c7158324d1fbbeb78e47d2198e8ddf5daa0 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* | | | Merge "Code tidies"Zhang Hao2021-03-051-2/+1
|\ \ \ \ | |_|_|/ |/| | |
| * | | Code tidiesZhang Hao2021-03-051-2/+1
| |/ / | | | | | | | | | | | | | | | | | | The return type goes on the same line of the rest of the signature. Change-Id: Icacf2e00ed2876c4c9b72b8f6c428c2e37ee42a7 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com>
* | | Merge "QPoint(F): declare as PRIMITIVE, not RELOCATABLE"Giuseppe D'Angelo2021-03-053-4/+13
|\ \ \ | |_|/ |/| |
| * | QPoint(F): declare as PRIMITIVE, not RELOCATABLEGiuseppe D'Angelo2021-03-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | These types can be copied via memcpy, so use the correct tag. Change-Id: Icba37d42dd8658225ce4889284661d108122d489 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Andrei Golubev <andrei.golubev@qt.io>
| * | tst_qmetatype: RELOCATABLE -> PRIMITIVE is binary compatibleFabian Kosmale2021-03-051-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | Based on the discussion in https://codereview.qt-project.org/c/qt/qtbase/+/336742 changing our types from RELOCATABLE to PRIMITVE is fine. Change-Id: Ica867203aa813d19fdfd3753fc4ff36ef4332fc3 Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | QQuaternion: mark as PRIMITIVE typeGiuseppe D'Angelo2021-03-051-1/+1
| | | | | | | | | | | | | | | Change-Id: I043fef8bfc66875b72f34e7939e78c7d1c7f5381 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* | | Merge "tst_qdtlscookie: use a proper 'enterLoopMSecs' instead of 'enterLoop'"Timur Pocheptsov2021-03-051-1/+1
|\ \ \ | |_|/ |/| |
| * | tst_qdtlscookie: use a proper 'enterLoopMSecs' instead of 'enterLoop'Timur Pocheptsov2021-03-051-1/+1
| |/ | | | | | | | | | | | | | | | | It's a bit weird to calculate timeout in milliseconds and then pass it as number of seconds ... Pick-to: 6.1 5.15 Change-Id: I1127163ea06e49ac1b53eea6f60ee8590319bfa1 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
* | Merge "Skip globalstatic threadStressTest on QEMU"Toni Saario2021-03-059-14/+101
|\ \ | |/ |/|
| * Skip globalstatic threadStressTest on QEMUToni Saario2021-03-052-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | The test causes frequent failures in the CI. This is the most subtle fix until it is properly fixed. Pick-to: 6.1 Task-number: QTBUG-91423 Change-Id: I6499378dcd3ed1c31275db38d83b572e764366cc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
| * Android: Place cursor correctly on screen when editingPiotr Mikolajczyk2021-03-057-14/+95
| | | | | | | | | | | | | | | | | | | | | | | | When editing text the cursor is not placed correctly. So this has been achieved by tricking Android into thinking that the input area is only the line where the cursor is, so it is forced to keep it on screen. Fixes: QTBUG-91073 Pick-to: 5.15 Change-Id: Icc2e8315deb76ca1a84819d3fdceaa7b027b1174 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* | QContiguousCache: Remove redundant conditionWang Yu2021-03-051-3/+1
|/ | | | | | | | The reverse condition was already checked three lines before. Pick-to: 6.1 Change-Id: I2f78262004871ec2f3730e2a25f26fe22636cde7 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Merge "Add QColorSpace::description"Allan Sandfeld Jensen2021-03-056-3/+57
|\
| * Add QColorSpace::descriptionAllan Sandfeld Jensen2021-03-046-3/+57
| | | | | | | | | | | | | | | | | | A way to read the description of the profile from ICC, or set one yourself. Change-Id: I68622e30ee209cac99c41f3df934712c3548c0de Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
* | Merge "QMenu test: turn tooltip animations off"Volker Hilsheimer2021-03-052-0/+3
|\ \
| * | QMenu test: turn tooltip animations offVolker Hilsheimer2021-03-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QTBUG_89082_actionTipsHide() is very flaky if tooltips fade in, as the mouse move might happen while the tooltip is still appearing. Fixes: QTBUG-91532 Pick-to: 6.1 6.0 5.15 Change-Id: I55305927fcf143d99dfff28d0bc70b2e831a139a Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
| * | Fix Android buildJoerg Bornemann2021-03-041-0/+1
| |/ | | | | | | | | | | | | | | The Android build failed, because the namespace QNativeInterface could not be found. Include the header file where it's defined. Change-Id: If53eda4d4d4e6d5e66787d74c714215721ba0b60 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* | Merge "Protect against self-assignment, plug potential memory leak"Volker Hilsheimer2021-03-041-0/+4
|\ \ | |/ |/|
| * Protect against self-assignment, plug potential memory leakVolker Hilsheimer2021-03-041-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Fixes static analyzer warning f03d95823e9f1395d64501cc111f0f63 As a drive-by, plug the potential memory leak if the assigned-to QDockAreaLayoutItem already holds a QDockAreaLayoutInfo object. The subinfo is deleted in the destructor, QDockAreaLayoutItem has ownership for the subinfo. Pick-to: 6.1 Change-Id: I8546adc6fb0537078eea9dfb45d1bd9967d8d149 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
* | Merge "Doc: Use correct include for QWGLContext"Paul Wicking2021-03-041-1/+1
|\ \
| * | Doc: Use correct include for QWGLContextPaul Wicking2021-03-041-1/+1
| |/ | | | | | | | | | | | | Pick-to: 6.1 6.0 Task-number: QTBUG-91500 Change-Id: If487a2d14dd61d127dc35aa039f9b71915128da1 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* / QProcess/Unix: use a common function to find the target executableThiago Macieira2021-03-041-48/+39
|/ | | | | | | | | | | | | This harmonizes the execution between start() and startDetached(). Both did QStandardDirs::findExecutable(), but duplicated code. However, only start() supported launching .app bundles on Mac. [ChangeLog][QtCore][QProcess] startDetached() now supports launching .app executable bundles on macOS / iOS systems, like start() already did. Change-Id: Ic90d8429a0eb4837971dfffd1664f776b2c0edfd Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@gmx.de>
* Merge "Fix build of Core module without regularexpression feature"Alexey Edelev2021-03-0411-26/+16
|\
| * Fix build of Core module without regularexpression featureAlexey Edelev2021-03-048-22/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qregularexpression.h requires FEATURE_regularexpression to be enabled. Add a condition to the 'qt_pch.h' header to fix the build when PCH are enabled and FEATURE_regularexpression is disabled. It seems that the filter implementation of QSortFilterProxyModel has QRegularExpression as its base. It's necessary to make sortfilterproxymodel dependent on the regularexpression feature. Fix the precompiler condition for the extractSections function in the QString implementation. Use the same precompiler condition for the QString::section and extractSections functions, since QString::section depends on extractSections. Change-Id: I5b775e0842a0aa1a8d47f8dded376bdfcf63b5bf Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * Fix QT_HOST_LIBEXECS for cross-builds on WindowsJoerg Bornemann2021-03-041-0/+4
| | | | | | | | | | | | | | | | | | | | Like for LibraryExecutables, we must default to "bin" on Windows for HostLibraryExecutables in our generated qconfig.cpp. Pick-to: 6.1 Fixes: QTBUG-91496 Change-Id: Ib5a4b3b3fd6192bd953e615058b482e67ad19462 Reviewed-by: Cristian Adam <cristian.adam@qt.io>
| * Complete the renaming of qt_add_tool to qt_internal_add_toolJoerg Bornemann2021-03-041-3/+3
| | | | | | | | | | | | | | | | | | | | Fix the name in the function's doc comment and error messages. Pick-to: 6.1 Change-Id: I918db802a0dbb0508f65d227f7c896d2ad0beeae Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Craig Scott <craig.scott@qt.io> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
| * Fix double inclusion of QtAutoDetect.cmake in top-level buildJoerg Bornemann2021-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | The variable we need to check is called QT_SUPERBUILD, not QT_SUPER_BUILD. Pick-to: 6.1 6.0 Change-Id: I8487f491a0a4cebdf08f579519e99e6afe3db8c2 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
* | Merge "Remove win32_system_libs feature from src/corelib/configure.json"Joerg Bornemann2021-03-0414-275/+78
|\ \
| * | Remove win32_system_libs feature from src/corelib/configure.jsonJoerg Bornemann2021-03-043-72/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This feature only existed to trigger the evaluation of the libs gdi32, kernel32 and friends. Those libs only were relevant for the qmake build of Qt and can be removed now. Task-number: QTBUG-83932 Change-Id: Idfd4d8f70b6dbd1067412fecc1115b504b1ad347 Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * | Move syncqt.pl to libexecJoerg Bornemann2021-03-043-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To not disturb the qmake build we kept syncqt.pl in <src>/bin but installed it to libexec. This is not necessary anymore. This also removes the need for having syncqt.pl in both, bin and libexec in the build dir of qtbase. Pick-to: 6.1 Fixes: QTBUG-91076 Change-Id: I44b014ea41e3f00c420e02fd5c76f11169340b8c Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| * | Remove fixqt4headers.plJoerg Bornemann2021-03-041-179/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This script was aiding users to port from Qt 4 to 5 and is considered to be of little value for Qt 6. Pick-to: 6.1 Change-Id: I26fb97d32969463d94e38222e32f241f86ad9193 Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch> Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Lars Knoll <lars.knoll@qt.io>
| * | Make toolchain inspection more robustJoerg Bornemann2021-03-042-4/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QtAutoDetect.cmake did read the (possibly detected) toolchain file and looked for the string "The Android Open Source Project" to deduce that we want to build for Android. This has been done, because we're autodetecting the platform before the first project comment, i.e. before the toolchain file is loaded. This magic string detection is a bit fragile, and we need a similar approach for WebAssembly. A more robust approach would be to fetch the value of CMAKE_SYSTEM_NAME from the toolchain file without actually loading it. Now, we run a CMake script that includes the toolchain file and prints variables were interested in. The calling code reads these variables and stores them in prefixed variables in the current scope. Change-Id: Ide9ea3054e1453d17129523e1ec86ecaed55af2a Reviewed-by: Craig Scott <craig.scott@qt.io> Reviewed-by: Cristian Adam <cristian.adam@qt.io>