[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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.