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

            Bug ID: 456921
           Summary: (SEGV) kWin crashed in
                    KWaylandServer::SurfaceInterface::resource() when
                    pressing a button on tablet
           Product: kwin
           Version: 5.25.3
          Platform: openSUSE RPMs
                OS: Linux
            Status: REPORTED
          Severity: crash
          Priority: NOR
         Component: general
          Assignee: kwin-bugs-n...@kde.org
          Reporter: pos...@posteo.eu
  Target Milestone: ---

Created attachment 150740
  --> https://bugs.kde.org/attachment.cgi?id=150740&action=edit
kWin Support Information

SUMMARY

kWin crashed and teared down the whole session (including my non-saved work),
when I accidentially pressed a tablet on my Wacom Intuos M tablet while taking
notes in Xournal++.

```
#0  0x00007fed6ff0b5e4 in KWaylandServer::SurfaceInterface::resource() const
(this=0x55bbe00bfb10) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/wayland/surface_interface.cpp:367
#1  0x00007fed6ff171d9 in
KWaylandServer::TabletPadV2Interface::setCurrentSurface(KWaylandServer::SurfaceInterface*,
KWaylandServer::TabletV2Interface*) (this=0x55bbde2903a0,
surface=0x55bbdfcbd600, tablet=0x55bbde109720) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/wayland/tablet_v2_interface.cpp:592
#2  0x00007fed6fda2ae6 in non-virtual thunk to
KWin::TabletInputFilter::tabletPadButtonEvent(unsigned int, bool,
KWin::TabletPadId const&) () at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/input.cpp:2306
#3  0x00007fed6fe314d5 in std::__invoke_impl<bool, bool
(KWin::InputEventFilter::*&)(unsigned int, bool, KWin::TabletToolId const&),
KWin::InputEventFilter* const&, unsigned int&, bool&,
KWin::TabletToolId&>(std::__invoke_memfun_deref, bool
(KWin::InputEventFilter::*&)(unsigned int, bool, KWin::TabletToolId const&),
KWin::InputEventFilter* const&, unsigned int&, bool&, KWin::TabletToolId&)
(__f=<optimized out>, __t=<optimized out>) at
/usr/include/c++/12/bits/invoke.h:74
#4  std::__invoke<bool (KWin::InputEventFilter::*&)(unsigned int, bool,
KWin::TabletPadId const&), KWin::InputEventFilter* const&, unsigned int&,
bool&, KWin::TabletPadId&>(bool (KWin::InputEventFilter::*&)(unsigned int,
bool, KWin::TabletPadId const&), KWin::InputEventFilter* const&, unsigned int&,
bool&, KWin::TabletPadId&) (__fn=@0x7ffdca1ae2a0: &virtual table offset 192) at
/usr/include/c++/12/bits/invoke.h:96
#5  std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned
int, bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId
const&)>::__call<bool, KWin::InputEventFilter* const&, 0ul, 1ul, 2ul,
3ul>(std::tuple<KWin::InputEventFilter* const&>&&, std::_Index_tuple<0ul, 1ul,
2ul, 3ul>) (__args=<optimized out>, this=0x7ffdca1ae2a0) at
/usr/include/c++/12/functional:484
#6  std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned
int, bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId
const&)>::operator()<KWin::InputEventFilter* const&,
bool>(KWin::InputEventFilter* const&) (this=0x7ffdca1ae2a0) at
/usr/include/c++/12/functional:567
#7  __gnu_cxx::__ops::_Iter_pred<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>
>::operator()<KWin::InputEventFilter* const*>(KWin::InputEventFilter* const*)
(__it=0x55bbdde14d98, this=0x7ffdca1ae2a0) at
/usr/include/c++/12/bits/predefined_ops.h:318
#8  std::__find_if<KWin::InputEventFilter* const*,
__gnu_cxx::__ops::_Iter_pred<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)> >
>(KWin::InputEventFilter* const*, KWin::InputEventFilter* const*,
__gnu_cxx::__ops::_Iter_pred<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)> >,
std::random_access_iterator_tag) (__pred=..., __last=0x55bbdde14da0,
__first=0x55bbdde14d98) at /usr/include/c++/12/bits/stl_algobase.h:2097
#9  std::__find_if<KWin::InputEventFilter* const*,
__gnu_cxx::__ops::_Iter_pred<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)> >
>(KWin::InputEventFilter* const*, KWin::InputEventFilter* const*,
__gnu_cxx::__ops::_Iter_pred<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)> >)
(__pred=..., __last=0x55bbdde14da0, __first=0x55bbdde14d18) at
/usr/include/c++/12/bits/stl_algobase.h:2112
#10 std::find_if<KWin::InputEventFilter* const*, std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>
>(KWin::InputEventFilter* const*, KWin::InputEventFilter* const*,
std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int,
bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>)
(__pred=..., __last=0x55bbdde14da0, __first=0x55bbdde14d18) at
/usr/include/c++/12/bits/stl_algo.h:3877
#11 std::none_of<KWin::InputEventFilter* const*, std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>
>(KWin::InputEventFilter* const*, KWin::InputEventFilter* const*,
std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int,
bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>)
(__pred=..., __last=0x55bbdde14da0, __first=0x55bbdde14d18) at
/usr/include/c++/12/bits/stl_algo.h:474
#12 std::any_of<KWin::InputEventFilter* const*, std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>
>(KWin::InputEventFilter* const*, KWin::InputEventFilter* const*,
std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int,
bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>)
(__pred=..., __last=0x55bbdde14da0, __first=0x55bbdde14d18) at
/usr/include/c++/12/bits/stl_algo.h:493
#13 KWin::InputRedirection::processFilters<std::_Bind<bool
(KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned int, bool,
KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>
>(std::_Bind<bool (KWin::InputEventFilter::*(std::_Placeholder<1>, unsigned
int, bool, KWin::TabletPadId))(unsigned int, bool, KWin::TabletPadId const&)>)
(function=..., this=<optimized out>) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/input.h:193
#14 KWin::TabletInputRedirection::tabletPadButtonEvent(unsigned int, bool,
KWin::TabletPadId const&) (this=0x55bbdd9de100, button=0, isPressed=<optimized
out>, tabletPadId=<optimized out>) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/tablet_input.cpp:106
#15 0x00007fed6ea83e6f in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffdca1ae3e0, r=0x55bbdd9de100, this=0x55bbddbd74e0) at
../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#16 doActivate<false>(QObject*, int, void**) (sender=0x55bbddbd5ae0,
signal_index=28, argv=0x7ffdca1ae3e0) at kernel/qobject.cpp:3886
#17 0x00007fed6ea7d22f in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**) (sender=<optimized out>, m=m@entry=0x7fed7009fdc0
<KWin::InputDevice::staticMetaObject>,
local_signal_index=local_signal_index@entry=25, argv=argv@entry=0x7ffdca1ae3e0)
at kernel/qobject.cpp:3946
#18 0x00007fed6fd094bd in KWin::InputDevice::tabletPadButtonEvent(unsigned int,
bool, KWin::TabletPadId const&) (this=<optimized out>, _t1=<optimized out>,
_t2=<optimized out>, _t3=<optimized out>) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/build/src/kwin_autogen/EWIEGA46WW/moc_inputdevice.cpp:831
#19 0x00007fed6fec13b0 in KWin::LibInput::Connection::processEvents()
(this=<optimized out>) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/backends/libinput/connection.cpp:509
#20 0x00007fed6ea78760 in QObject::event(QEvent*) (this=0x55bbdd8ea450,
e=0x7fecd402d4d0) at kernel/qobject.cpp:1314
#21 0x00007fed6df6641e in QApplicationPrivate::notify_helper(QObject*, QEvent*)
(this=<optimized out>, receiver=0x55bbdd8ea450, e=0x7fecd402d4d0) at
kernel/qapplication.cpp:3637
#22 0x00007fed6ea4cfb8 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x55bbdd8ea450, event=0x7fecd402d4d0) at
kernel/qcoreapplication.cpp:1064
#23 0x00007fed6ea4ff51 in QCoreApplicationPrivate::sendPostedEvents(QObject*,
int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0,
data=data@entry=0x55bbdd8444e0) at kernel/qcoreapplication.cpp:1821
#24 0x00007fed6eaa1a51 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=0x55bbdd890db0, flags=...) at kernel/qeventdispatcher_unix.cpp:468
#25 0x000055bbdbdebbbd in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...) at qunixeventdispatcher.cpp:63
#26 0x00007fed6ea4ba2b in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffdca1ae7e0, flags=..., flags@entry=...) at
../../include/QtCore/../../src/corelib/global/qflags.h:69
#27 0x00007fed6ea53b96 in QCoreApplication::exec() () at
../../include/QtCore/../../src/corelib/global/qflags.h:121
#28 0x00007fed6eea0e0c in QGuiApplication::exec() () at
kernel/qguiapplication.cpp:1867
#29 0x00007fed6df66395 in QApplication::exec() () at
kernel/qapplication.cpp:2829
#30 0x000055bbdbd17900 in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at
/usr/src/debug/kwin5-5.25.3-1.1.x86_64/src/main_wayland.cpp:642
```


SOFTWARE/OS VERSIONS
Operating System: openSUSE Tumbleweed 20220714
KDE Plasma Version: 5.25.3
KDE Frameworks Version: 5.96.0
Qt Version: 5.15.5
Kernel Version: 5.18.9-2-default (64-bit)
Graphics Platform: Wayland
Graphics Processor: AMD Radeon RX 580 Series

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

Reply via email to