Bug 449028

Summary: Crash during completion on Wayland
Product: [Frameworks and Libraries] frameworks-ktexteditor Reporter: Christoph Cullmann <christoph>
Component: generalAssignee: KWrite Developers <kwrite-bugs-null>
Status: RESOLVED WORKSFORME    
Severity: crash CC: christoph, nate
Priority: NOR Keywords: wayland-only
Version First Reported In: 5.90.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Christoph Cullmann 2022-01-23 18:50:15 UTC
Crash on Wayland, during typing, completion did show up.

kate: ../wayland-1.20.0/src/wayland-client.c:230: wl_proxy_unref: Assertion `proxy->refcount > 0' failed.

Thread 1 (Thread 0x7f82139a6a80 (LWP 34254) "kate"):
#1  0x00007f82173a8503 in pthread_mutex_lock () from /usr/lib/libpthread.so.0
#2  0x00007f82162ecad6 in wl_proxy_marshal_array_flags () from /usr/lib/libwayland-client.so.0
#3  0x00007f82162ecea0 in wl_proxy_marshal_flags () from /usr/lib/libwayland-client.so.0
#4  0x00007f8213289126 in org_kde_kwin_appmenu_release (org_kde_kwin_appmenu=0x55d1615b3a60) at /home/cullmann/projects/kde/build/kwayland/src/client/wayland-appmenu-client-protocol.h:180
#5  0x00007f8213289af2 in KWayland::Client::WaylandPointer<org_kde_kwin_appmenu, org_kde_kwin_appmenu_release>::release (this=0x55d161eaeb30) at /home/cullmann/projects/kde/src/kwayland/src/client/wayland_pointer_p.h:44
#6  0x00007f821328968a in KWayland::Client::AppMenu::release (this=0x55d1620a46a0) at /home/cullmann/projects/kde/src/kwayland/src/client/appmenu.cpp:131
#7  0x00007f82132895e4 in KWayland::Client::AppMenu::~AppMenu (this=0x55d1620a46a0, __in_chrg=<optimized out>) at /home/cullmann/projects/kde/src/kwayland/src/client/appmenu.cpp:121
#8  0x00007f821328961c in KWayland::Client::AppMenu::~AppMenu (this=0x55d1620a46a0, __in_chrg=<optimized out>) at /home/cullmann/projects/kde/src/kwayland/src/client/appmenu.cpp:122
#9  0x00007f8213619251 in KWaylandIntegration::shellSurfaceDestroyed (this=0x55d15e6454c0, w=0x55d161ea2af0) at /home/cullmann/projects/kde/src/plasma-integration/src/platformtheme/kwaylandintegration.cpp:110
#10 0x00007f8213618ebf in KWaylandIntegration::eventFilter (this=0x55d15e6454c0, watched=0x55d161ea2af0, event=0x7ffd1ebd2b60) at /home/cullmann/projects/kde/src/plasma-integration/src/platformtheme/kwaylandintegration.cpp:70
#11 0x00007f8218351dbe in QCoreApplicationPrivate::sendThroughApplicationEventFilters(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#12 0x00007f8218fa01e2 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#13 0x00007f821835317a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#14 0x00007f82188a50c0 in QWindowPrivate::setVisible(bool) () from /usr/lib/libQt5Gui.so.5
#15 0x00007f8218fd42e3 in QWidgetPrivate::hide_helper() () from /usr/lib/libQt5Widgets.so.5
#16 0x00007f8218fd5a99 in QWidgetPrivate::setVisible(bool) () from /usr/lib/libQt5Widgets.so.5
#17 0x00007f821ab29444 in KateCompletionWidget::modelContentChanged (this=0x55d161de1760) at /home/cullmann/projects/kde/src/ktexteditor/src/completion/katecompletionwidget.cpp:243
#18 0x00007f821ab36fb4 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KateCompletionWidget::*)()>::call(void (KateCompletionWidget::*)(), KateCompletionWidget*, void**) (f=(void (KateCompletionWidget::*)(KateCompletionWidget * const)) 0x7f821ab291cc <KateCompletionWidget::modelContentChanged()>, o=0x55d161de1760, arg=0x7ffd1ebd2ec0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:152
#19 0x00007f821ab366a6 in QtPrivate::FunctionPointer<void (KateCompletionWidget::*)()>::call<QtPrivate::List<>, void>(void (KateCompletionWidget::*)(), KateCompletionWidget*, void**) (f=(void (KateCompletionWidget::*)(KateCompletionWidget * const)) 0x7f821ab291cc <KateCompletionWidget::modelContentChanged()>, o=0x55d161de1760, arg=0x7ffd1ebd2ec0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:185
#20 0x00007f821ab35365 in QtPrivate::QSlotObject<void (KateCompletionWidget::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x55d1620b6da0, r=0x55d161de1760, a=0x7ffd1ebd2ec0, ret=0x0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:418
#21 0x00007f8218383da3 in ?? () from /usr/lib/libQt5Core.so.5
#22 0x00007f821830ffbb in QAbstractItemModel::layoutChanged(QList<QPersistentModelIndex> const&, QAbstractItemModel::LayoutChangeHint) () from /usr/lib/libQt5Core.so.5
#23 0x00007f821ab3d1da in KateCompletionModel::setCurrentCompletion (this=0x55d161dd63c0, model=0x55d160986d60, completion=...) at /home/cullmann/projects/kde/src/ktexteditor/src/completion/katecompletionmodel.cpp:1018
#24 0x00007f821ab2beca in KateCompletionWidget::cursorPositionChanged (this=0x55d161de1760) at /home/cullmann/projects/kde/src/ktexteditor/src/completion/katecompletionwidget.cpp:808
#25 0x00007f821ab36fb4 in QtPrivate::FunctorCall<QtPrivate::IndexesList<>, QtPrivate::List<>, void, void (KateCompletionWidget::*)()>::call(void (KateCompletionWidget::*)(), KateCompletionWidget*, void**) (f=(void (KateCompletionWidget::*)(KateCompletionWidget * const)) 0x7f821ab2b992 <KateCompletionWidget::cursorPositionChanged()>, o=0x55d161de1760, arg=0x7ffd1ebd3220) at /usr/include/qt/QtCore/qobjectdefs_impl.h:152
#26 0x00007f821ab366a6 in QtPrivate::FunctionPointer<void (KateCompletionWidget::*)()>::call<QtPrivate::List<>, void>(void (KateCompletionWidget::*)(), KateCompletionWidget*, void**) (f=(void (KateCompletionWidget::*)(KateCompletionWidget * const)) 0x7f821ab2b992 <KateCompletionWidget::cursorPositionChanged()>, o=0x55d161de1760, arg=0x7ffd1ebd3220) at /usr/include/qt/QtCore/qobjectdefs_impl.h:185
#27 0x00007f821ab35365 in QtPrivate::QSlotObject<void (KateCompletionWidget::*)(), QtPrivate::List<>, void>::impl(int, QtPrivate::QSlotObjectBase*, QObject*, void**, bool*) (which=1, this_=0x55d161e010b0, r=0x55d161de1760, a=0x7ffd1ebd3220, ret=0x0) at /usr/include/qt/QtCore/qobjectdefs_impl.h:418
#28 0x00007f8218383da3 in ?? () from /usr/lib/libQt5Core.so.5
#29 0x00007f821aae45ca in KTextEditor::View::cursorPositionChanged (this=0x55d161655dd0, _t1=0x55d161655dd0, _t2=...) at /home/cullmann/projects/kde/build/ktexteditor/src/KF5TextEditor_autogen/OGSBNZGFXN/moc_view.cpp:435
#30 0x00007f821acaafc6 in KateViewInternal::updateCursor (this=0x55d161bed5a0, newCursor=..., force=true, center=false, calledExternally=false) at /home/cullmann/projects/kde/src/ktexteditor/src/view/kateviewinternal.cpp:2383
#31 0x00007f821acb2c54 in KateViewInternal::editEnd (this=0x55d161bed5a0, editTagLineStart=29, editTagLineEnd=29, tagFrom=false) at /home/cullmann/projects/kde/src/ktexteditor/src/view/kateviewinternal.cpp:4063
#32 0x00007f821ac8e782 in KTextEditor::ViewPrivate::editEnd (this=0x55d161655dd0, editTagLineStart=29, editTagLineEnd=29, tagFrom=false) at /home/cullmann/projects/kde/src/ktexteditor/src/view/kateview.cpp:2150
#33 0x00007f821ab8ec69 in KTextEditor::DocumentPrivate::editEnd (this=0x55d161544f50) at /home/cullmann/projects/kde/src/ktexteditor/src/document/katedocument.cpp:1035
#34 0x00007f821ab9a00d in KTextEditor::DocumentPrivate::typeChars (this=0x55d161544f50, view=0x55d161655dd0, chars=...) at /home/cullmann/projects/kde/src/ktexteditor/src/document/katedocument.cpp:3222
#35 0x00007f821acad39c in KateViewInternal::keyPressEvent (this=0x55d161bed5a0, e=0x7ffd1ebd3ad0) at /home/cullmann/projects/kde/src/ktexteditor/src/view/kateviewinternal.cpp:2833
#36 0x00007f821acac8f3 in KateViewInternal::eventFilter (this=0x55d161bed5a0, obj=0x55d161bed5a0, e=0x7ffd1ebd3ad0) at /home/cullmann/projects/kde/src/ktexteditor/src/view/kateviewinternal.cpp:2667
#37 0x00007f8218351efa in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#38 0x00007f8218fa0195 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#39 0x00007f8218fa5257 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#40 0x00007f821835317a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#41 0x00007f8218ff640b in ?? () from /usr/lib/libQt5Widgets.so.5
#42 0x00007f8218fa01a6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQt5Widgets.so.5
#43 0x00007f821835317a in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/libQt5Core.so.5
#44 0x00007f8218897ba4 in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) () from /usr/lib/libQt5Gui.so.5
#45 0x00007f82188825e5 in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Gui.so.5
#46 0x00007f82163a79a5 in ?? () from /usr/lib/libQt5WaylandClient.so.5
#47 0x00007f821656efd3 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#48 0x00007f82165c5049 in ?? () from /usr/lib/libglib-2.0.so.0
#49 0x00007f821656c545 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#50 0x00007f821839e45a in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#51 0x00007f821834b45b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQt5Core.so.5
#52 0x00007f8218356ba7 in QCoreApplication::exec() () from /usr/lib/libQt5Core.so.5
#53 0x000055d15cd930fa in main (argc=1, argv=0x7ffd1ebd4298) at /home/cullmann/projects/kde/src/kate/kate/main.cpp:700
[Inferior 1 (process 34254) detached]
Comment 1 Christoph Cullmann 2022-03-15 19:35:31 UTC
Couldn't reproduce in the last 4 weeks.
Perhaps other updates fixed that.