Bug 445483

Summary: Media Controls causes crash while using Plasma Integration with locally signed certificate
Product: [Plasma] plasmashell Reporter: tuxsudo <tuxinator12>
Component: generalAssignee: David Edmundson <kde>
Status: RESOLVED DOWNSTREAM    
Severity: crash CC: nate, plasma-bugs
Priority: NOR Keywords: drkonqi
Version: 5.23.3   
Target Milestone: 1.0   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Authentication Popup

Description tuxsudo 2021-11-14 13:53:40 UTC
Application: plasmashell (5.23.3)

Qt Version: 5.15.2
Frameworks Version: 5.88.0
Operating System: Linux 5.14.17-hardened1-1-hardened x86_64
Windowing System: Wayland
Distribution: EndeavourOS
DrKonqi: 5.23.3 [KCrashBackend]

-- Information about the crash:
Using both Firefox and Brave browser with Plasma Integration Addon/Extension, playing media from a website with a self signed certificate causes a "Server Authentication" popup to showup, freeze, and sometimes just closes OR crashes the Plasma shell (seems to always restart on its own)

The Popup in Question says
"The server failed the authenticity check (192.XXX.X.XX).
The issuer certificate of a locally looked up certificate could not be found"
 (Self signed Caddy certificate, so its not happy)

Using Lightly but does it with Breeze theme aswell. OS information should be attached to the report.

The crash can be reproduced every time.

-- Backtrace:
Application: Plasma (plasmashell), signal: Segmentation fault

[KCrash Handler]
#4  0x0000000000000000 in  ()
#5  0x000066dfe7b9968f in  () at /usr/lib/libQt5Gui.so.5
#6  0x000066dfe7bfa840 in  () at /usr/lib/libQt5Gui.so.5
#7  0x000066dfe7bab3e5 in QRasterPaintEngine::fill(QVectorPath const&, QBrush const&) () at /usr/lib/libQt5Gui.so.5
#8  0x000066dfe7b92b0e in QPaintEngineEx::stroke(QVectorPath const&, QPen const&) () at /usr/lib/libQt5Gui.so.5
#9  0x000066dfe7b8e937 in QPaintEngineEx::drawRoundedRect(QRectF const&, double, double, Qt::SizeMode) () at /usr/lib/libQt5Gui.so.5
#10 0x000066dfe1ff6b3a in Lightly::Helper::renderButtonFrame(QPainter*, QRect const&, QColor const&, QPalette const&, bool, bool, bool, bool, bool, Lightly::AnimationMode, double) const (this=0xaa444533280, painter=0x7196af5e4f70, rect=..., color=..., palette=..., hasFocus=true, sunken=false, mouseOver=true, enabled=true, windowActive=true, mode=Lightly::AnimationPressed, opacity=0) at /home/tuxsudo/Lightly/kstyle/lightlyhelper.cpp:727
#11 0x000066dfe201a62b in Lightly::Style::drawPanelButtonCommandPrimitive(QStyleOption const*, QPainter*, QWidget const*) const (this=0xaa4445162c0, option=0x7196af5e4f90, painter=0x7196af5e4f70, widget=0x66df74057570) at /home/tuxsudo/Lightly/kstyle/lightlystyle.cpp:3922
#12 0x000066dfe203c9d8 in std::__invoke_impl<bool, bool (Lightly::Style::*&)(QStyleOption const*, QPainter*, QWidget const*) const, Lightly::Style const&, QStyleOption const*, QPainter*, QWidget const*>(std::__invoke_memfun_ref, bool (Lightly::Style::*&)(QStyleOption const*, QPainter*, QWidget const*) const, Lightly::Style const&, QStyleOption const*&&, QPainter*&&, QWidget const*&&) (__f=@0x7196af5e4c00: (bool (Lightly::Style::*)(const class Lightly::Style * const, const class QStyleOption *, class QPainter *, const class QWidget *)) 0x66dfe201a134 <Lightly::Style::drawPanelButtonCommandPrimitive(QStyleOption const*, QPainter*, QWidget const*) const>, __t=...) at /usr/include/c++/11.1.0/bits/invoke.h:67
#13 0x000066dfe203c061 in std::__invoke_r<bool, bool (Lightly::Style::*&)(QStyleOption const*, QPainter*, QWidget const*) const, Lightly::Style const&, QStyleOption const*, QPainter*, QWidget const*>(bool (Lightly::Style::*&)(QStyleOption const*, QPainter*, QWidget const*) const, Lightly::Style const&, QStyleOption const*&&, QPainter*&&, QWidget const*&&) (__fn=@0x7196af5e4c00: (bool (Lightly::Style::*)(const class Lightly::Style * const, const class QStyleOption *, class QPainter *, const class QWidget *)) 0x66dfe201a134 <Lightly::Style::drawPanelButtonCommandPrimitive(QStyleOption const*, QPainter*, QWidget const*) const>) at /usr/include/c++/11.1.0/bits/invoke.h:142
#14 0x000066dfe203afa2 in std::_Function_handler<bool (Lightly::Style const&, QStyleOption const*, QPainter*, QWidget const*), bool (Lightly::Style::*)(QStyleOption const*, QPainter*, QWidget const*) const>::_M_invoke(std::_Any_data const&, Lightly::Style const&, QStyleOption const*&&, QPainter*&&, QWidget const*&&) (__functor=..., __args#0=..., __args#1=@0x7196af5e4b78: 0x7196af5e4f90, __args#2=@0x7196af5e4b70: 0x7196af5e4f70, __args#3=@0x7196af5e4b68: 0x66df74057570) at /usr/include/c++/11.1.0/bits/std_function.h:291
#15 0x000066dfe2037936 in std::function<bool (Lightly::Style const&, QStyleOption const*, QPainter*, QWidget const*)>::operator()(Lightly::Style const&, QStyleOption const*, QPainter*, QWidget const*) const (this=0x7196af5e4c00, __args#0=..., __args#1=0x7196af5e4f90, __args#2=0x7196af5e4f70, __args#3=0x66df74057570) at /usr/include/c++/11.1.0/bits/std_function.h:560
#16 0x000066dfe200ec99 in Lightly::Style::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const (this=0xaa4445162c0, element=QStyle::CE_PushButtonBevel, option=0x7196af5e4f90, painter=0x7196af5e4f70, widget=0x66df74057570) at /home/tuxsudo/Lightly/kstyle/lightlystyle.cpp:1086
#17 0x000066dfe826e187 in QCommonStyle::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const () at /usr/lib/libQt5Widgets.so.5
#18 0x000066dfe200ecce in Lightly::Style::drawControl(QStyle::ControlElement, QStyleOption const*, QPainter*, QWidget const*) const (this=0xaa4445162c0, element=QStyle::CE_PushButton, option=0x7196af5e4f90, painter=0x7196af5e4f70, widget=0x66df74057570) at /home/tuxsudo/Lightly/kstyle/lightlystyle.cpp:1087
#19 0x000066dfe838a653 in QPushButton::paintEvent(QPaintEvent*) () at /usr/lib/libQt5Widgets.so.5
#20 0x000066dfe822d0be in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#21 0x000066dfe81e9d62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#22 0x000066dfe75073fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#23 0x000066dfe8224cf8 in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /usr/lib/libQt5Widgets.so.5
#24 0x000066dfe822555c in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt5Widgets.so.5
#25 0x000066dfe8226a10 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt5Widgets.so.5
#26 0x000066dfe822526d in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt5Widgets.so.5
#27 0x000066dfe8226a10 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt5Widgets.so.5
#28 0x000066dfe822526d in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /usr/lib/libQt5Widgets.so.5
#29 0x000066dfe81fb2ef in  () at /usr/lib/libQt5Widgets.so.5
#30 0x000066dfe822d829 in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#31 0x000066dfe81e9d62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#32 0x000066dfe75073fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#33 0x000066dfe81fc22f in  () at /usr/lib/libQt5Widgets.so.5
#34 0x000066dfe81feccf in  () at /usr/lib/libQt5Widgets.so.5
#35 0x000066dfe8215e64 in QWidget::repaint(QRect const&) () at /usr/lib/libQt5Widgets.so.5
#36 0x000066dfe8215ecb in QWidget::repaint() () at /usr/lib/libQt5Widgets.so.5
#37 0x000066dfe82e23c2 in QAbstractButton::mouseMoveEvent(QMouseEvent*) () at /usr/lib/libQt5Widgets.so.5
#38 0x000066dfe822d0be in QWidget::event(QEvent*) () at /usr/lib/libQt5Widgets.so.5
#39 0x000066dfe81e9d62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#40 0x000066dfe81f1ac9 in QApplication::notify(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#41 0x000066dfe75073fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#42 0x000066dfe81f057b in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool, bool) () at /usr/lib/libQt5Widgets.so.5
#43 0x000066dfe8246a84 in  () at /usr/lib/libQt5Widgets.so.5
#44 0x000066dfe8249db5 in  () at /usr/lib/libQt5Widgets.so.5
#45 0x000066dfe81e9d62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /usr/lib/libQt5Widgets.so.5
#46 0x000066dfe75073fa in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /usr/lib/libQt5Core.so.5
#47 0x000066dfe78e01f0 in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () at /usr/lib/libQt5Gui.so.5
#48 0x000066dfe78b57d5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Gui.so.5
#49 0x000066dfe50a21e1 in  () at /usr/lib/libQt5WaylandClient.so.5
#50 0x000066dfe57f24dc in g_main_context_dispatch () at /usr/lib/libglib-2.0.so.0
#51 0x000066dfe5846799 in  () at /usr/lib/libglib-2.0.so.0
#52 0x000066dfe57efbc1 in g_main_context_iteration () at /usr/lib/libglib-2.0.so.0
#53 0x000066dfe7560026 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#54 0x000066dfe7505d6c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /usr/lib/libQt5Core.so.5
#55 0x000066dfe750e2d4 in QCoreApplication::exec() () at /usr/lib/libQt5Core.so.5
#56 0x00000aa43d965132 in  ()
#57 0x000066dfe6e91b25 in __libc_start_main () at /usr/lib/libc.so.6
#58 0x00000aa43d96526e in  ()
[Inferior 1 (process 9969) detached]

Possible duplicates by query: bug 400456.

Reported using DrKonqi
Comment 1 tuxsudo 2021-11-14 14:03:09 UTC
Created attachment 143542 [details]
Authentication Popup

Also forget to mention while that media is still playing, anytime I click the Music/Media Controls on the Task Manager it causes the same popup and crash to occur. Screenshot attached
Comment 2 Nate Graham 2021-11-23 19:02:23 UTC
Crash is in the Lightly application style:

#10 0x000066dfe1ff6b3a in Lightly::Helper::renderButtonFrame(QPainter*, QRect const&, QColor const&, QPalette const&, bool, bool, bool, bool, bool, Lightly::AnimationMode, double) const (this=0xaa444533280, painter=0x7196af5e4f70, rect=..., color=..., palette=..., hasFocus=true, sunken=false, mouseOver=true, enabled=true, windowActive=true, mode=Lightly::AnimationPressed, opacity=0) at /home/tuxsudo/Lightly/kstyle/lightlyhelper.cpp:727
#11 0x000066dfe201a62b in Lightly::Style::drawPanelButtonCommandPrimitive(QStyleOption const*, QPainter*, QWidget const*) const (this=0xaa4445162c0, option=0x7196af5e4f90, painter=0x7196af5e4f70, widget=0x66df74057570) at /home/tuxsudo/Lightly/kstyle/lightlystyle.cpp:3922

Please send this to the Lightly developer.