winft / wrapland

Qt/C++ library wrapping libwayland
GNU Lesser General Public License v2.1
6 stars 2 forks source link

running weston-confine leads reference pointing to nothing #85

Open romangg opened 1 year ago

romangg commented 1 year ago

In GitLab by @tomenglund26 on Oct 23, 2022, 01:20

run weston-confine and drag the mouse outside the window/surface.

==99058==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000010 (pc 0x7f21fec7f7d5 bp 0x7ffd4d3a4560 sp 0x7ffd4d3a4550 T0)
==99058==The signal is caused by a READ memory access.
==99058==Hint: address points to the zero page.
    #0 0x7f21fec7f7d5 in Wrapland::Server::Surface::state() const /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/surface.cpp:372
    #1 0x7f21febe4609 in operator() /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/pointer.cpp:422
    #2 0x7f21febe7d7f in call /usr/include/qt/QtCore/qobjectdefs_impl.h:146
    #3 0x7f21febe76d0 in call<QtPrivate::List<>, void> /usr/include/qt/QtCore/qobjectdefs_impl.h:256
    #4 0x7f21febe75cd in impl /usr/include/qt/QtCore/qobjectdefs_impl.h:443
    #5 0x7f21fcebd380  (/usr/lib/libQt5Core.so.5+0x2bd380)
    #6 0x7f21fea2e3cc in Wrapland::Server::Surface::committed() /home/tom/dev/aur/kwinft-git/wrapland-git/src/build/server/WraplandServer_autogen/EWIEGA46WW/moc_surface.cpp:196
    #7 0x7f21fec82dcd in Wrapland::Server::Surface::Private::commit() /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/surface.cpp:658
    #8 0x7f21fec84b94 in Wrapland::Server::Surface::Private::commitCallback(wl_client*, wl_resource*) /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/surface.cpp:818
    #9 0x7f21fb54e4f5  (/usr/lib/libffi.so.8+0x74f5)
    #10 0x7f21fb54af5d  (/usr/lib/libffi.so.8+0x3f5d)
    #11 0x7f21fb54db72 in ffi_call (/usr/lib/libffi.so.8+0x6b72)
    #12 0x7f21fef75ad9  (/usr/lib/libwayland-server.so.0+0x8ad9)
    #13 0x7f21fef7a00f  (/usr/lib/libwayland-server.so.0+0xd00f)
    #14 0x7f21fef789e1 in wl_event_loop_dispatch (/usr/lib/libwayland-server.so.0+0xb9e1)
    #15 0x7f21fecfc579 in Wrapland::Server::Wayland::Display::dispatch() /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/wayland/display.cpp:240
    #16 0x7f21fecfbe0d in operator() /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/wayland/display.cpp:206
    #17 0x7f21fecff91f in call /usr/include/qt/QtCore/qobjectdefs_impl.h:146
    #18 0x7f21fecff25e in call<QtPrivate::List<>, void> /usr/include/qt/QtCore/qobjectdefs_impl.h:256
    #19 0x7f21fecfe80f in impl /usr/include/qt/QtCore/qobjectdefs_impl.h:443
    #20 0x7f21fcebd380  (/usr/lib/libQt5Core.so.5+0x2bd380)
    #21 0x7f21fcebf233 in QSocketNotifier::activated(QSocketDescriptor, QSocketNotifier::Type, QSocketNotifier::QPrivateSignal) (/usr/lib/libQt5Core.so.5+0x2bf233)
    #22 0x7f21fcebf377 in QSocketNotifier::event(QEvent*) (/usr/lib/libQt5Core.so.5+0x2bf377)
    #23 0x7f21fc578b1b in QApplicationPrivate::notify_helper(QObject*, QEvent*) (/usr/lib/libQt5Widgets.so.5+0x178b1b)
    #24 0x7f21fce8cb87 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (/usr/lib/libQt5Core.so.5+0x28cb87)
    #25 0x7f21fced61cb in QEventDispatcherUNIXPrivate::activateSocketNotifiers() (/usr/lib/libQt5Core.so.5+0x2d61cb)
    #26 0x7f21fced72c0 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/libQt5Core.so.5+0x2d72c0)
    #27 0x556628f83a41 in QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/bin/kwin_wayland+0xc2ca41)
    #28 0x7f21fce8532b in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (/usr/lib/libQt5Core.so.5+0x28532b)
    #29 0x7f21fce8fe58 in QCoreApplication::exec() (/usr/lib/libQt5Core.so.5+0x28fe58)
    #30 0x55662846f651 in main /home/tom/dev/aur/kwinft-git/src/kwin/main_wayland.cpp:470
    #31 0x7f21fbe3c28f  (/usr/lib/libc.so.6+0x2328f)
    #32 0x7f21fbe3c349 in __libc_start_main (/usr/lib/libc.so.6+0x23349)
    #33 0x55662844e344 in _start ../sysdeps/x86_64/start.S:115

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /home/tom/dev/aur/kwinft-git/wrapland-git/src/wrapland/server/surface.cpp:372 in Wrapland::Server::Surface::state() const
==99058==ABORTING