Bug 467722 - NeoChat crashes in chatbar mention highlighting
Summary: NeoChat crashes in chatbar mention highlighting
Status: RESOLVED FIXED
Alias: None
Product: NeoChat
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Tobias Fella
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2023-03-23 16:52 UTC by Craig Magina
Modified: 2023-04-29 13:41 UTC (History)
2 users (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Craig Magina 2023-03-23 16:52:33 UTC
Application: neochat (23.01)

Qt Version: 5.15.8
Frameworks Version: 5.104.0
Operating System: Linux 6.2.7-200.fc37.x86_64 x86_64
Windowing System: Wayland
Distribution: Fedora Linux 37 (KDE Plasma)
DrKonqi: 5.27.3 [KCrashBackend]

-- Information about the crash:
Whenever I try and leave a room that is from my Slack bridge, the application crashes shortly afterwards. I am not sure if this happens when I leave a room from other bridges (irc, gchat) or matrix itself as I haven't tried yet.

The crash can be reproduced every time.

-- Backtrace:
Application: NeoChat (neochat), signal: Segmentation fault

[KCrash Handler]
#4  0x0000563f40eadda9 in SyntaxHighlighter::highlightBlock(QString const&) ()
#5  0x00007f431e2a5f71 in QSyntaxHighlighterPrivate::reformatBlock(QTextBlock const&) () from /lib64/libQt5Gui.so.5
#6  0x00007f431e2a60ff in QSyntaxHighlighterPrivate::reformatBlocks(int, int, int) () from /lib64/libQt5Gui.so.5
#7  0x00007f431dcd101f in void doActivate<false>(QObject*, int, void**) () from /lib64/libQt5Core.so.5
#8  0x00007f431e511797 in QTextDocument::contentsChange(int, int, int) () from /lib64/libQt5Gui.so.5
#9  0x00007f431e263cab in QTextDocumentPrivate::finishEdit() () from /lib64/libQt5Gui.so.5
#10 0x00007f43202e4414 in QQuickTextControlPrivate::inputMethodEvent(QInputMethodEvent*) () from /lib64/libQt5Quick.so.5
#11 0x00007f43202e1933 in QQuickTextControl::processEvent(QEvent*, QPointF const&) () from /lib64/libQt5Quick.so.5
#12 0x00007f43202ed3b0 in QQuickTextEdit::inputMethodEvent(QInputMethodEvent*) () from /lib64/libQt5Quick.so.5
#13 0x00007f4320297088 in QQuickItem::event(QEvent*) () from /lib64/libQt5Quick.so.5
#14 0x00007f431e9aed62 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#15 0x00007f431dc9d4e8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#16 0x00007f431bb7fb57 in QtWaylandClient::QWaylandInputContext::commit() () from /lib64/libQt5WaylandClient.so.5
#17 0x00007f43202ad1f2 in QQuickWindowPrivate::setFocusInScope(QQuickItem*, QQuickItem*, Qt::FocusReason, QFlags<QQuickWindowPrivate::FocusOption>) () from /lib64/libQt5Quick.so.5
#18 0x00007f4320292551 in QQuickItem::forceActiveFocus(Qt::FocusReason) () from /lib64/libQt5Quick.so.5
#19 0x00007f42e66ded2a in ColumnView::setCurrentIndex(int) () from /usr/lib64/qt5/qml/org/kde/kirigami.2/libKirigamiPlugin.so
#20 0x00007f42e66dfef8 in ColumnView::childMouseEventFilter(QQuickItem*, QEvent*) () from /usr/lib64/qt5/qml/org/kde/kirigami.2/libKirigamiPlugin.so
#21 0x00007f43202ab169 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#22 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#23 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#24 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#25 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#26 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#27 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#28 0x00007f43202ab031 in QQuickWindowPrivate::sendFilteredPointerEventImpl(QQuickPointerEvent*, QQuickItem*, QQuickItem*) () from /lib64/libQt5Quick.so.5
#29 0x00007f43202b193a in QQuickWindowPrivate::deliverPressOrReleaseEvent(QQuickPointerEvent*, bool) () from /lib64/libQt5Quick.so.5
#30 0x00007f43202b262d in QQuickWindowPrivate::deliverMouseEvent(QQuickPointerMouseEvent*) () from /lib64/libQt5Quick.so.5
#31 0x00007f43202b3601 in QQuickWindowPrivate::deliverPointerEvent(QQuickPointerEvent*) () from /lib64/libQt5Quick.so.5
#32 0x00007f431e72f82d in QQuickOverlay::eventFilter(QObject*, QEvent*) () from /lib64/libQt5QuickTemplates2.so.5
#33 0x00007f431dc9d2b1 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#34 0x00007f431e9aed52 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#35 0x00007f431dc9d4e8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#36 0x00007f431e16ad6d in QGuiApplicationPrivate::processMouseEvent(QWindowSystemInterfacePrivate::MouseEvent*) () from /lib64/libQt5Gui.so.5
#37 0x00007f431e149f1c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Gui.so.5
#38 0x00007f431bba1604 in userEventSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5WaylandClient.so.5
#39 0x00007f431d29bc7f in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#40 0x00007f431d2f2118 in g_main_context_iterate.constprop () from /lib64/libglib-2.0.so.0
#41 0x00007f431d298f00 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#42 0x00007f431dcee5fa in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#43 0x00007f431dc9bf3a in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#44 0x00007f431dca4002 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#45 0x0000563f40d6f7a5 in main ()
[Inferior 1 (process 5516) detached]

Reported using DrKonqi
Comment 1 Tobias Fella 2023-03-26 13:22:33 UTC
Doesn't look related to the slack bridging; apparently somethings going wrong during syntax highlighting
Comment 2 Bug Janitor Service 2023-04-28 13:00:22 UTC
A possibly relevant merge request was started @ https://invent.kde.org/network/neochat/-/merge_requests/937
Comment 3 Tobias Fella 2023-04-28 14:57:18 UTC
Git commit 014185c4c97d4318c5b973e9dc96ead5f8143618 by Tobias Fella.
Committed on 28/04/2023 at 14:14.
Pushed by tfella into branch 'master'.

Prevent crash in SyntaxHighlighter when leaving room

M  +1    -1    src/chatdocumenthandler.h

https://invent.kde.org/network/neochat/commit/014185c4c97d4318c5b973e9dc96ead5f8143618
Comment 4 Tobias Fella 2023-04-29 13:41:34 UTC
Git commit 3ee6877b1520f224ef27a6ce9d93eeba7d07073f by Tobias Fella.
Committed on 28/04/2023 at 15:01.
Pushed by tfella into branch 'release/23.04'.

Prevent crash in SyntaxHighlighter when leaving room
(cherry picked from commit 014185c4c97d4318c5b973e9dc96ead5f8143618)

M  +1    -1    src/chatdocumenthandler.h

https://invent.kde.org/network/neochat/commit/3ee6877b1520f224ef27a6ce9d93eeba7d07073f