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

            Bug ID: 527147
           Summary: Plasmashell DialogBackground freeze on quit
    Classification: Plasma
           Product: plasmashell
      Version First 6.8.0
       Reported In:
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: [email protected]
          Reporter: [email protected]
                CC: [email protected]
  Target Milestone: 1.0

DESCRIPTION
Plasmashell freezes on quit, so logout, shutdown, reboot, "plasmashell
--replace" are affected.

When it hangs, I can see "qt.core.qobject.connect: QObject::disconnect:
Unexpected nullptr parameter" in logs.

Looks like it hangs in DialogBackground m_engine destructor, backtrace:

#0  0x00007f97e3ab6132 in ??? () at /usr/lib/libc.so.6
#1  0x00007f97e3aa94e8 in ??? () at /usr/lib/libc.so.6
#2  0x00007f97e3aaee27 in ??? () at /usr/lib/libc.so.6
#3  0x00007f97e45bcf66 in ??? () at /usr/lib/libQt6Core.so.6
#4  0x00007f97e44f1631 in QThread::wait(QDeadlineTimer) () at
/usr/lib/libQt6Core.so.6
#5  0x00007f97e6bdbf95 in ??? () at /usr/lib/libQt6Quick.so.6
#6  0x00007f97e6bdcb12 in ??? () at /usr/lib/libQt6Quick.so.6
#7  0x00007f97e4407dea in QObjectPrivate::deleteChildren() () at
/usr/lib/libQt6Core.so.6
#8  0x00007f97e440edd5 in QObject::~QObject() () at /usr/lib/libQt6Core.so.6
#9  0x00007f97e73a93ae in std::destroy_at<QQmlEngine>
(__location=0x55de8afa43b0) at /usr/include/c++/16/bits/stl_construct.h:88
#10 std::_Destroy<QQmlEngine> (__pointer=0x55de8afa43b0) at
/usr/include/c++/16/bits/stl_construct.h:164
#11 std::allocator_traits<std::allocator<void> >::destroy<QQmlEngine>
(__p=0x55de8afa43b0) at /usr/include/c++/16/bits/alloc_traits.h:859
#12 std::_Sp_counted_ptr_inplace<QQmlEngine, std::allocator<void>,
(__gnu_cxx::_Lock_policy)2>::_M_dispose (this=0x55de8afa43a0) at
/usr/include/c++/16/bits/shared_ptr_base.h:682
#13 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release_last_use
(this=0x55de8afa43a0) at /usr/include/c++/16/bits/shared_ptr_base.h:174
#14 std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release_last_use_cold
(this=0x55de8afa43a0) at /usr/include/c++/16/bits/shared_ptr_base.h:198
#15 0x00007f97e73cf0d8 in
std::_Sp_counted_base<(__gnu_cxx::_Lock_policy)2>::_M_release (this=<optimized
out>) at /usr/include/c++/16/bits/shared_ptr_base.h:430
#16 std::__shared_count<(__gnu_cxx::_Lock_policy)2>::~__shared_count
(this=0x55de8d9fb1d0, this=<optimized out>) at
/usr/include/c++/16/bits/shared_ptr_base.h:1137
#17 std::__shared_ptr<QQmlEngine, (__gnu_cxx::_Lock_policy)2>::~__shared_ptr
(this=0x55de8d9fb1c8, this=<optimized out>) at
/usr/include/c++/16/bits/shared_ptr_base.h:1611
#18 std::shared_ptr<QQmlEngine>::~shared_ptr (this=0x55de8d9fb1c8,
this=<optimized out>) at /usr/include/c++/16/bits/shared_ptr.h:175
#19 PlasmaQuick::DialogBackground::~DialogBackground (this=0x55de8d9fb1a0,
this=<optimized out>) at
/usr/src/debug/libplasma/libplasma-6.8.0/src/plasmaquick/dialogbackground_p.cpp:36
#20 PlasmaQuick::DialogBackground::~DialogBackground (this=0x55de8d9fb1a0,
this=<optimized out>) at
/usr/src/debug/libplasma/libplasma-6.8.0/src/plasmaquick/dialogbackground_p.cpp:36
#21 0x00007f97e4407dea in QObjectPrivate::deleteChildren() () at
/usr/lib/libQt6Core.so.6
#22 0x00007f97e440edd5 in QObject::~QObject() () at /usr/lib/libQt6Core.so.6
#23 0x00007f97e6a72e96 in ??? () at /usr/lib/libQt6Quick.so.6
#24 0x00007f97e6a74efd in QQuickWindow::~QQuickWindow() () at
/usr/lib/libQt6Quick.so.6
#25 0x00007f97dc19be92 in ToolTipDialog::~ToolTipDialog (this=0x55de8d985fa0,
this=<optimized out>) at
/usr/src/debug/libplasma/libplasma-6.8.0/src/declarativeimports/core/tooltipdialog.cpp:56
#26 ToolTipArea::~ToolTipArea (this=0x55de8cb39eb0, this=<optimized out>) at
/usr/src/debug/libplasma/libplasma-6.8.0/src/declarativeimports/core/tooltiparea.cpp:61
#27 0x00007f97dc19c092 in QQmlPrivate::QQmlElement<ToolTipArea>::~QQmlElement
(this=0x55de8cb39eb0, this=<optimized out>) at
/usr/include/qt6/QtQml/qqmlprivate.h:114
#28 QQmlPrivate::QQmlElement<ToolTipArea>::~QQmlElement (this=0x55de8cb39eb0,
this=<optimized out>) at /usr/include/qt6/QtQml/qqmlprivate.h:114
#29 0x00007f97e4407dea in QObjectPrivate::deleteChildren() () at
/usr/lib/libQt6Core.so.6
#30 0x00007f97e440edd5 in QObject::~QObject() () at /usr/lib/libQt6Core.so.6
#31 0x000055de63a040cb in main (argc=<optimized out>, argv=<optimized out>) at
/usr/src/debug/plasma-workspace/plasma-workspace-6.8.0/shell/main.cpp:223

STEPS TO REPRODUCE
1. Quit (it's undefined/random when it hangs, but happens often to me).

OBSERVED RESULT
Deadlock, PC shutdown is locked.

EXPECTED RESULT
No deadlock.

SOFTWARE/OS VERSIONS
KDE Plasma Version: 6.8.0
KDE Frameworks Version: 6.31.0
Qt Version: 6.12.0

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

Reply via email to