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

            Bug ID: 362863
           Summary: Recursion between KDE Platform Theme and
                    QSystemTrayIcon (when not using Plasma)
           Product: plasma-integration
           Version: master
          Platform: Debian unstable
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: mgraess...@kde.org
          Reporter: mity...@gmail.com

When StatusNotifier is not available (i.e. when not using Plasma),
KNotifications tries to fall back to Qt's implementation, however that actually
leads to infinite recursion.

See https://bugs.debian.org/807805 for the original bug report.

Reproducible: Always

Steps to Reproduce:
1. Use an environment without StatusNotifier support
2. Use KDE Platform Theme
3. Try to run Vlc (any other application that has a system tray icon should
also work)

Actual Results:  
Infinite recursion that leads to stack overflow and crash

Expected Results:  
No crash

Fragment of a stack trace demonstrating a loop (Qt version is 5.5.1):

#18 0x00007fffe5a13b27 in QSystemTrayIcon::setVisible (this=<optimized out>,
visible=visible@entry=true) at util/qsystemtrayicon.cpp:271
#19 0x00007fffd33b2f95 in QSystemTrayIcon::show (this=<optimized out>) at
/usr/include/x86_64-linux-gnu/qt5/QtWidgets/qsystemtrayicon.h:95
#20 KStatusNotifierItemPrivate::setLegacySystemTrayEnabled
(this=this@entry=0x7fffd6ba3720, enabled=enabled@entry=true) at
../../src/kstatusnotifieritem.cpp:808
#21 0x00007fffd33b3fbd in KStatusNotifierItemPrivate::registerToDaemon
(this=this@entry=0x7fffd6ba3720) at ../../src/kstatusnotifieritem.cpp:744
#22 0x00007fffd33b53fb in KStatusNotifierItemPrivate::init
(this=this@entry=0x7fffd6ba3720, extraId=...) at
../../src/kstatusnotifieritem.cpp:722
#23 0x00007fffd33b57fe in KStatusNotifierItem::KStatusNotifierItem
(this=0x7fffd6ba3320, parent=<optimized out>) at
../../src/kstatusnotifieritem.cpp:55
#24 0x00007fffd3be67e7 in KDEPlatformSystemTrayIcon::init (this=0x7fffd6ba1f80)
at ../../../src/platformtheme/kdeplatformsystemtrayicon.cpp:270
#25 0x00007fffe5a14024 in QSystemTrayIconPrivate::install_sys_qpa
(this=this@entry=0x7fffd6ba2f60) at util/qsystemtrayicon.cpp:684
#26 0x00007fffe5a310be in QSystemTrayIconPrivate::install_sys
(this=this@entry=0x7fffd6ba2f60) at util/qsystemtrayicon_x11.cpp:280
#27 0x00007fffe5a13b27 in QSystemTrayIcon::setVisible (this=<optimized out>,
visible=visible@entry=true) at util/qsystemtrayicon.cpp:271

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

Reply via email to