[qt/qt/qtbase]: Summary of bulk changes made
KDE Git Services - Bulk Change <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git repository change summary for qt/qt/qtbase Pushed by mirror-service into branch '6.12'. Changed from ed8d333a6b1662806c8af8b350926093aad11cb9 to 606c81b6cb058d8a13404d4a73807874e6879a51 Acknowledgement was received that this change introduces only existing code that has been pushed to another public open source repository. This change contains the following new commits: Git commit a99f77c6bc9f780071f6252fdecff9c381534acb by Qt Cherry-pick Bot (on behalf of Seokha Ko) on 19/08/2026 at 04:01.. ohos: Restore a minimized sub-window with showWindow() On OHOS, Window.minimize() minimizes a main window (restorable from the dock), but for a child window or global floating window it merely hides the window, which cannot be restored from the dock and must be brought back with Window.showWindow(). handleWindowStateChange() routed every un-minimize through restoreMainWindow(), which returns early for non-main windows, so a minimized child or floating window was never shown again. Call showWindow() when Qt::WindowMinimized is cleared on a sub-window or floating window. See https://developer.huawei.com/consumer/en/doc/harmonyos-references/arkts-apis-window-window#minimize11 Change-Id: Id97e5e9cd63c665638bfb7f1741961d02999c884 Reviewed-by: Aleksander Wawrzyniak <[email protected]> Reviewed-by: SanthoshKumar Selvaraj <[email protected]> (cherry picked from commit 823afbe2fee824e048939d278e712b6b78fc9999) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/a99f77c6bc9f780071f6252fdecff9c381534acb Git commit 2970c3257abaa5ca54b68878e8546d0afe7f1a11 by Qt Cherry-pick Bot (on behalf of Dennis Kim) on 19/08/2026 at 05:37.. ohos: don't report a hide()-issued minimize as WindowMinimized When hideAbility() is unavailable, QOhosView::hideMainWindow() takes the window off-screen with a native minimize(). OHOS then emits a MINIMIZE status, which handleWindowStatusChange() promoted to Qt::WindowMinimized. hide() and minimize() are orthogonal in Qt: a hidden window must stay in WindowNoState. Promoting the status drives it NoState->Minimized, so the next show() takes the restore branch and delivers a spurious extra QShowEvent. tst_QWidget::eventsAndAttributesOnDestroy catches this: show/hide/show yields 3 show events instead of 2. Suppress it: hideMainWindow() records that it owes one MINIMIZE echo, and handleWindowStatusChange() drops that echo instead of promoting it. Counting the owed echoes, rather than using a flag, keeps this correct when the asynchronous echo only arrives after a subsequent show(), and when hide/show is repeated. Fixes: QTBUG-148259 Change-Id: Ice53706c33794b2b3c47033e13b2fe5e3ffff526 Reviewed-by: SanthoshKumar Selvaraj <[email protected]> Reviewed-by: Seokha Ko <[email protected]> (cherry picked from commit c5fc610a093e7e6b7ce84007f475271d999b265a) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/2970c3257abaa5ca54b68878e8546d0afe7f1a11 Git commit 94a6febc29262288d217e1ed200c09214864a7a1 by Qt Cherry-pick Bot (on behalf of Marc Mutz) on 19/08/2026 at 05:43.. QArrayData/Ops: defend against -ftrivial-auto-var-init Clang 21 confirms¹ that it inserts memsets/stores due to -ftrivial-auto-var-init in these four places. The pointer variable is written by each allocate*() function (they all call allocateHelper(), which, as the first statement, assigns nullptr to them. We could just let it be, except that in the Clang reporting, this shows up in _every_ TU. 16k times in my builds, which is far from a complete qt5 one. The others are ... more interesting. It turns out that -ftrivial-auto-var-init does _not_ just handle _trivial_, but _all_ automatic variables. Maybe it's one of the other flags that we pass for hardening, but Clang itself attributes it to -ftrivial-auto-var-init. It seems to only omit initialization when it can prove the constructor of the automatic object writes to these bytes. If the constructor body is not visible, e.g. because it is out-of-line, then Clang memsets. These four sites were flagged by Clang itself, so while there could be more, these are definitely affected. QList etc are not in the business of second-guessing the initialization behavior of unrelated types, so prevent the memsets by using __attribute__((uninitialized)). Note that this affects only the stacked temps. The final value that ends up in the container is using placement new, is not an automatic variable, and therefore already not subject to -ftrivial-auto-var-init. The copy ctor is obviously not our concern. But the two `tmp`s are always at least value-initializing, even if the args... are empty, never mere default-initialization, so we don't change anything for trivially constructible types, either. The one thing we lose is padding initialization. But we want other tools to tell us, not "hardening" optiona papering it over. Amends 9ff1e6d80bbd5b44b9ec4c0a837d9a4c962698e4 (6.8). ¹ -fsave-optimization-record=yaml \ -foptimization-record-passes=annotation-remarks Pick-to: 6.11 6.8 Change-Id: I342172cf69299b8d9cd73c39b98951edc3149339 Reviewed-by: Allan Sandfeld Jensen <[email protected]> (cherry picked from commit a22ce9f4123c8fe4381b7889de8b415e2450e94d) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/94a6febc29262288d217e1ed200c09214864a7a1 Git commit c81271e57d5af24e4940233d3290e9a54e2a1f17 by Qt Cherry-pick Bot (on behalf of Marc Mutz) on 19/08/2026 at 05:43.. QtTemporalPattern: simplify supports() We don't need to distinguish between date and time categories. We can use a single bit-field for both. This wastes only 94-40-24 = 30 bits of space, so four bytes, and gets rid of the magic numbers (shifts and sizes) in the function. It also means we can reuse the CHECK macro for both time and date components. As a drive-by, factor the mapping into a small helper container. It may eventually grow to be useful elsewhere, complementing my unfinished EnumIndexedArray. Amends 1a9f52ad2d0d42d568ee6a3a9607f8fb878875a3 (6.12). Change-Id: Ifc6d6edbcf91afe9e0b1238dbfaf1e2afabde717 Reviewed-by: Ivan Solovev <[email protected]> Reviewed-by: Edward Welbourne <[email protected]> (cherry picked from commit d45c12417902975a68a265e0343dc65d4ba3dd0e) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/c81271e57d5af24e4940233d3290e9a54e2a1f17 Git commit 7c038b8b2c7871629de4d1f6dd8f5d7b4ecd1ca3 by Qt Cherry-pick Bot (on behalf of Marc Mutz) on 19/08/2026 at 05:43.. QHttpHeaaderRange: fix EQUALITY_COMPARABLE macro This is a literal type, so use the corresponding macro to make the relational operators constexpr, too. Found in API-review. Change-Id: I815963f3e88af86ad57ededec5ee359d43ba0dc0 Reviewed-by: Mårten Nordheim <[email protected]> (cherry picked from commit 4563e95ae94898ac3936ca8bb636aadde19d3583) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/7c038b8b2c7871629de4d1f6dd8f5d7b4ecd1ca3 Git commit fb021eb91753ab6fd45b1e2b95984a64bc5abac1 by Qt Cherry-pick Bot (on behalf of Volker Hilsheimer) on 19/08/2026 at 06:34.. QMap: mark referenceHoldingDetach helpers as [[nodiscard]] Equivalent to QMultiMap, the purpose of these functions is to keep the pre-detach copy - and thus references to key/value that may alias the map - alive in a caller-side local. Discarding the result silently defeats the safety and risks a dangling reference. Note that these methods have public visibility even though they are undocumented and in practice only used internally. Amends 906289f81a34d9fdc9802b448a88bf474ae1da00 to address header review comments. Task-number: QTBUG-146286 Change-Id: I1a972fd512364c26789c191a546f83457d0d3f70 Reviewed-by: Allan Sandfeld Jensen <[email protected]> (cherry picked from commit 3f007086364356d7530642abcf9eda9b849ca8e7) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/fb021eb91753ab6fd45b1e2b95984a64bc5abac1 Git commit 606c81b6cb058d8a13404d4a73807874e6879a51 by Qt Cherry-pick Bot (on behalf of Volker Hilsheimer) on 19/08/2026 at 06:34.. QEasingCurve: fix named constructor from cubic bezier points Named constructors in Qt start with "from", and QPointF is a small, trivially copied type that should be passed by value. Add a symmetric \sa to the addCubicBezierSegment documentation. Amends f4e0dbdc98a89ca12fd90aa7bd4ec43a7c04b065 to address header review comments. Task-number: QTBUG-146286 Change-Id: I293adbc82b467c85c1cb7609421277c548c6ac80 Reviewed-by: Vlad Zahorodnii <[email protected]> (cherry picked from commit a97ff4ed1df5861a02516a3162ed90291247c7af) Reviewed-by: Qt Cherry-pick Bot <[email protected]> https://invent.kde.org/qt/qt/qtbase/-/commit/606c81b6cb058d8a13404d4a73807874e6879a51