Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-88622

Crash after reparenting items containing GraphicalEffects components

XMLWordPrintable

    • Linux/X11, macOS, Windows

      After experiencing some crashes in our app, using Qt 5.15.1, I found causing component.

      It is the ColorOverlay component from QtGraphicalEffects.

      The ColorOverlay was created in the main window and then reparented with a bunch of other components to a different window. By reverting and repeating the process of reparenting, the app crashes at some point

      After reparenting the items, there are some warning messages:

      QQuickItem: Cannot use same item on different windows at the same time.

      I recreated the behavior in a small test application and tried to work around the crash with a Loader. It only doesn't crash, if I connect to the windowChanged signal of the top level Item, to deactivate and activate the Loader during the reparenting process. If I only reparent the item without deactivating the Loader, the app crashes after I resize the new window.

      Additionally I noticed that a component, which uses a GraphicsEffect like ColorOverlay, when loaded via a Loader it causes graphical artifacts, when the window is resized (maybe another Bug?).

      Previously we used Qt 5.10.1 and the warning messages also appeared, but it didn't crashed.

        1. main.qml
          3 kB
          Voodoo Master
        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            qt.team.quick.subscriptions Qt Quick and Widgets Team
            voodoo66 Voodoo Master
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes