https://bugs.kde.org/show_bug.cgi?id=481045

Jakob Petsovits <jpe...@petsovits.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|                            |https://invent.kde.org/fram
                   |                            |eworks/kcmutils/-/commit/80
                   |                            |db4e37396298c5712aa48a943f0
                   |                            |a89637f83b7
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #8 from Jakob Petsovits <jpe...@petsovits.com> ---
Git commit 80db4e37396298c5712aa48a943f0a89637f83b7 by Jakob Petsovits.
Committed on 26/02/2024 at 15:57.
Pushed by jpetso into branch 'master'.

SharedQmlEngine: Don't crash from dangling child item objects

In System Settings, navigating away from pushed sub-pages would
often crash. The KQuickConfigModule destructor explicitly deletes
SharedQmlEngine's rootObject() and implicitly its QQmlContext,
but the subPages would stick around.

Before this commit, createObjectFromComponent() assigned rootObject()
as QObject parent for newly instantiated objects, but not for
Qt Quick items. Those would instead have the "parent" property set,
i.e. setParentItem(), which does not change the QObject hierarchy.

This commit changes the logic to always call QObject::setParent(),
and call the optional "parent" property setter in addition to it.
This ensures that deleting rootObject() will also get rid of any
otherwise dangling sub-pages.

M  +6    -10   src/qml/sharedqmlengine.cpp

https://invent.kde.org/frameworks/kcmutils/-/commit/80db4e37396298c5712aa48a943f0a89637f83b7

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to