Bug 468052 - Plasma keeps crashing in QTextDocument::docHandle() when playing video in browser with Plasma Browser Integration active
Summary: Plasma keeps crashing in QTextDocument::docHandle() when playing video in bro...
Status: RESOLVED DUPLICATE of bug 465454
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: 5.27.3
Platform: Kubuntu Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2023-04-02 01:11 UTC by Lucas
Modified: 2023-10-24 06:59 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (70.03 KB, text/plain)
2023-10-24 06:59 UTC, 1176531705
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Lucas 2023-04-02 01:11:44 UTC
Application: plasmashell (5.27.3)

Qt Version: 5.15.6
Frameworks Version: 5.104.0
Operating System: Linux 5.19.0-38-generic x86_64
Windowing System: X11
Distribution: Ubuntu 22.10
DrKonqi: 5.27.3 [KCrashBackend]

-- Information about the crash:
Sorry if this is not specific enough, but Plasmashell keeps crashing between service restarts and reboots, and I don't know the root cause or what to do next.

How can I provide more info on this issue?

The crash can be reproduced every time.

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

[KCrash Handler]
#4  0x00007fe07bc62ca4 in QTextDocument::docHandle() const () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#5  0x00007fe07bc5a8dc in QTextFrame::begin() const () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#6  0x00007fe07bc9e389 in  () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#7  0x00007fe07bc9e9ae in  () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#8  0x00007fe07bc9eff8 in QTextDocumentLayout::doLayout(int, int, int) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#9  0x00007fe07bca03a9 in QTextDocumentLayout::documentChanged(int, int, int) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#10 0x00007fe07bc78718 in QTextDocumentPrivate::clear() () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#11 0x00007fe07bc60fae in QTextDocument::setPlainText(QString const&) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#12 0x00007fe07c6a98eb in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#13 0x00007fe07c6aac8d in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#14 0x00007fe07c6ab761 in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#15 0x00007fe07c6ad92b in QLabel::paintEvent(QPaintEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#16 0x00007fe07c5aeb48 in QWidget::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#17 0x00007fe07c65b552 in QFrame::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007fe07c56bf32 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007fe07b6bae38 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#20 0x00007fe07c5a6dc9 in QWidgetPrivate::sendPaintEvent(QRegion const&) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#21 0x00007fe07c5a7681 in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#22 0x00007fe07c5a8996 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#23 0x00007fe07c5a87f9 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#24 0x00007fe07c5a72fc in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#25 0x00007fe07c5a8996 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#26 0x00007fe07c5a87f9 in QWidgetPrivate::paintSiblingsRecursive(QPaintDevice*, QList<QObject*> const&, int, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#27 0x00007fe07c5a72fc in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, QFlags<QWidgetPrivate::DrawWidgetFlag>, QPainter*, QWidgetRepaintManager*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#28 0x00007fe07c57d41d in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#29 0x00007fe07c57dc1a in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#30 0x00007fe07c5cb78c in  () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#31 0x00007fe07c56bf32 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Widgets.so.5
#32 0x00007fe07b6bae38 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#33 0x00007fe07bb43921 in QGuiApplicationPrivate::processExposeEvent(QWindowSystemInterfacePrivate::ExposeEvent*) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#34 0x00007fe07bb1663c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Gui.so.5
#35 0x00007fe0768fa78e in  () at /lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#36 0x00007fe07a30c569 in g_main_context_dispatch () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#37 0x00007fe07a3613c8 in  () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#38 0x00007fe07a309d20 in g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0
#39 0x00007fe07b714aea in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#40 0x00007fe07b6b97cb in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#41 0x00007fe07b6c1c2a in QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt5Core.so.5
#42 0x000055c94af97a47 in  ()
#43 0x00007fe07ac23510 in __libc_start_call_main (main=main@entry=0x55c94af96b60, argc=argc@entry=1, argv=argv@entry=0x7ffc4bc00408) at ../sysdeps/nptl/libc_start_call_main.h:58
#44 0x00007fe07ac235c9 in __libc_start_main_impl (main=0x55c94af96b60, argc=1, argv=0x7ffc4bc00408, init=<optimized out>, fini=<optimized out>, rtld_fini=<optimized out>, stack_end=0x7ffc4bc003f8) at ../csu/libc-start.c:381
#45 0x000055c94af97b65 in  ()
[Inferior 1 (process 38326) detached]

Reported using DrKonqi
Comment 1 Fushan Wen 2023-04-04 17:58:28 UTC
Are you using proxy?
Comment 2 Nate Graham 2023-04-04 19:34:09 UTC
Can you clarify what exactly "between service restarts and reboots" means? When specifically does Plasma crash?
Comment 3 Nate Graham 2023-04-04 19:37:36 UTC
Oh also, does the issue go away if you disable (don't hide, disable) the Media Player widget in your Panel or System Tray? Or if you disable Plasma Browser Integration?
Comment 4 Lucas 2023-04-04 19:49:07 UTC
In reply to Nate Graham from comment #2)
> Can you clarify what exactly "between service restarts and reboots" means?
> When specifically does Plasma crash?
Sure. Just a quick update: I can't replicate this problem anymore, but given that 1. I didn't fix it intentionally; 2. no updates were applied in the meantime, and 3. given the "catastrophic fault", I think it's worth investigating what caused it in the first place as someone else might experience it.

I attempted restarting plasmashell many times using both `kquitapp5 plasmashell && kstart5 plasmashell` and `systemctl --user restart plasma-plasmashell`. They had the same effect: plasma would start and crash up to three times within a few seconds before "giving up". Occasionally it would start without crashing, but only for a few seconds or minutes, and I don't know what would cause it to crash again.

Rebooting the entire system also had no effect: after the SDDM login screen plasma would eventually (if not instantly) crash.
Comment 5 Lucas 2023-04-04 19:52:34 UTC
(In reply to Nate Graham from comment #3)
> Oh also, does the issue go away if you disable (don't hide, disable) the
> Media Player widget in your Panel or System Tray? Or if you disable Plasma
> Browser Integration?

If the problem resurfaces I can try disabling the browser integration and the media player in the system tray - I don't have one in the panel.
Comment 6 Lucas 2023-04-04 20:18:31 UTC
(In reply to Fushan Wen from comment #1)
> Are you using proxy?

As in a web proxy? I most likely had the VPN enabled during the crashes. Could that be related to the problem?
Comment 7 Nate Graham 2023-04-04 20:30:51 UTC
Yep. Does it happen when you're not behind a VPN?
Comment 8 Lucas 2023-04-07 02:12:09 UTC
(In reply to Nate Graham from comment #7)
> Yep. Does it happen when you're not behind a VPN?

So the issue came back. It also happens when the VPN is off.
Comment 9 Lucas 2023-04-07 02:17:47 UTC
(In reply to Nate Graham from comment #3)
> Oh also, does the issue go away if you disable (don't hide, disable) the
> Media Player widget in your Panel or System Tray? Or if you disable Plasma
> Browser Integration?

It still happened with the media tray icon disabled. I've now disabled the Plasma Integration extension and, so far, it hasn't crashed.
Comment 10 Nate Graham 2023-04-09 18:54:33 UTC
Thanks for the info.
Comment 11 Nate Graham 2023-04-09 19:13:42 UTC
We also have a report in Bug 467493 that the issue has gone away in Plasma 5.27.4. Can you upgrade to that version, keep plasma-browser-integration active, and see if it's fixed now? Thanks a lot!
Comment 12 Lucas 2023-04-14 15:09:21 UTC
(In reply to Nate Graham from comment #11)
> We also have a report in Bug 467493 that the issue has gone away in Plasma
> 5.27.4. Can you upgrade to that version, keep plasma-browser-integration
> active, and see if it's fixed now? Thanks a lot!

Interesting, I was also running Jellyfin during the crashes. During the last few days I had integration disabled and the issue didn't show up. I'm now on 5.27.4 with Plasma Integration enabled again - I'll leave an update here in a few days. Thanks for the help!
Comment 13 Fushan Wen 2023-04-15 04:59:45 UTC

*** This bug has been marked as a duplicate of bug 465454 ***
Comment 14 1176531705 2023-10-24 06:59:11 UTC
Created attachment 162527 [details]
New crash information added by DrKonqi

plasmashell (5.27.5) using Qt 5.15.8

i'm using a open-source program named yesplaymusic (maybe based on chromium or react?), it crushed when i tried to open this program without internet connection (but connected to wlan). i use clash on my conputer and  on my router.

-- Backtrace (Reduced):
#5  0x00007f5adfc5a770 in QTextDocument::docHandle() const () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#6  0x00007f5adfc52678 in QTextFrame::begin() const () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
[...]
#9  0x00007f5adfc96680 in QTextDocumentLayout::doLayout(int, int, int) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#10 0x00007f5adfc979d9 in QTextDocumentLayout::documentChanged(int, int, int) () from /lib/x86_64-linux-gnu/libQt5Gui.so.5
#11 0x00007f5adfc70078 in QTextDocumentPrivate::clear() () from /lib/x86_64-linux-gnu/libQt5Gui.so.5