-
Bug
-
Resolution: Unresolved
-
P4: Low
-
None
-
6.10.0 Beta3
-
Arch Linux using GNOME + Wayland, but running my app with the xcb platform
I get the following crash on startup (caught by ASAN):
=================================================================
==3120623==ERROR: AddressSanitizer: heap-buffer-overflow on address 0x7dcff1401174 at pc 0x55555dae7956 bp 0x7fffffffbaf0 sp 0x7fffffffb2b0
READ of size 333 at 0x7dcff1401174 thread T0
#0 0x55555dae7955 in strndup.part.0 (/home/alex/Documents/git/zrythm/builddir_cmake/products/bin/zrythm+0x8593955) (BuildId: 5ea3bdabe140d174ddb18cbc24dc792f25685eea)
#1 0x7ffff4069753 in atom_intern /usr/src/debug/libxkbcommon/build/../libxkbcommon/src/atom.c:119:17
#2 0x7ffff406ba6f in xkb_atom_intern /usr/src/debug/libxkbcommon/build/../libxkbcommon/src/context-priv.c:56:12
#3 0x7ffff406ba6f in get_aliases /usr/src/debug/libxkbcommon/build/../libxkbcommon/src/x11/keymap.c:1072:13
#4 0x7ffff406ba6f in get_names /usr/src/debug/libxkbcommon/build/../libxkbcommon/src/x11/keymap.c:1123:10
#5 0x7ffff406ba6f in xkb_x11_keymap_new_from_device /usr/src/debug/libxkbcommon/build/../libxkbcommon/src/x11/keymap.c:1210:10
#6 0x7ffff178dbad in QXcbKeyboard::updateKeymap() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/plugins/platforms/xcb/qxcbkeyboard.cpp:355:26
#7 0x7ffff178e03d in QXcbKeyboard::QXcbKeyboard(QXcbConnection*) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/plugins/platforms/xcb/qxcbkeyboard.cpp:516:17
#8 0x7ffff1762233 in QXcbConnection::QXcbConnection(QXcbNativeInterface*, bool, unsigned int, char const*) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/plugins/platforms/xcb/qxcbconnection.cpp:79:39
#9 0x7ffff178aaee in QXcbIntegration::QXcbIntegration(QList<QString> const&, int&, char**) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/plugins/platforms/xcb/qxcbintegration.cpp:173:106
#10 0x7ffff4c1e371 in QXcbIntegrationPlugin::create(QString const&, QList<QString> const&, int&, char**) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/plugins/platforms/xcb/qxcbmain.cpp:22:73
#11 0x7ffff67ffc19 in QPlatformIntegration* qLoadPlugin<QPlatformIntegration, QPlatformIntegrationPlugin, QList<QString> const&, int&, char**&>(QFactoryLoader const*, QString const&, QList<QString> const&, int&, char**&) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/corelib/plugin/qfactoryloader_p.h:102:58
#12 0x7ffff67ffb30 in QPlatformIntegrationFactory::create(QString const&, QList<QString> const&, int&, char**, QString const&) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/gui/kernel/qplatformintegrationfactory.cpp:23:73
#13 0x7ffff67c3b69 in init_platform(QString const&, QString const&, QString const&, int&, char**) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/gui/kernel/qguiapplication.cpp:1308:91
#14 0x7ffff67c5eac in QGuiApplicationPrivate::createPlatformIntegration() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/gui/kernel/qguiapplication.cpp:1590:18
#15 0x7ffff67c6092 in QGuiApplicationPrivate::createEventDispatcher() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/gui/kernel/qguiapplication.cpp:1608:34
#16 0x7ffff774cb1c in QApplicationPrivate::createEventDispatcher() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/widgets/kernel/qapplication.cpp:153:50
#17 0x7ffff554c6d8 in QCoreApplicationPrivate::init() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/corelib/kernel/qcoreapplication.cpp:865:30
#18 0x7ffff67c89e3 in QGuiApplicationPrivate::init() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/gui/kernel/qguiapplication.cpp:1636:34
#19 0x7ffff775feca in QApplicationPrivate::init() /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/widgets/kernel/qapplication.cpp:475:33
#20 0x7ffff775ff79 in QApplication::QApplication(int&, char**, int) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/widgets/kernel/qapplication.cpp:463:12
#21 0x55555ec6180f in zrythm::gui::ZrythmApplication::ZrythmApplication(int&, char**) /home/alex/Documents/git/zrythm/src/gui/backend/zrythm_application.cpp:30:7
#22 0x55555e2aabcc in main /home/alex/Documents/git/zrythm/src/main.cpp:14:34
#23 0x7ffff4a27674 in __libc_start_call_main /usr/src/debug/glibc/glibc/csu/../sysdeps/nptl/libc_start_call_main.h:58:16
#24 0x7ffff4a27728 in __libc_start_main /usr/src/debug/glibc/glibc/csu/../csu/libc-start.c:360:3
#25 0x55555da8aea4 in _start (/home/alex/Documents/git/zrythm/builddir_cmake/products/bin/zrythm+0x8536ea4) (BuildId: 5ea3bdabe140d174ddb18cbc24dc792f25685eea)
0x7dcff1401174 is located 0 bytes after 2292-byte region [0x7dcff1400880,0x7dcff1401174)
allocated by thread T2 (QXcbEventQueue) here:
#0 0x55555db8c0b5 in malloc (/home/alex/Documents/git/zrythm/builddir_cmake/products/bin/zrythm+0x86380b5) (BuildId: 5ea3bdabe140d174ddb18cbc24dc792f25685eea)
#1 0x7ffff4d68bc3 in read_packet /usr/src/debug/libxcb/libxcb-1.17.0/src/xcb_in.c:265:15
#2 0x7ffff4d68bc3 in _xcb_in_read /usr/src/debug/libxcb/libxcb-1.17.0/src/xcb_in.c:1042:11
Thread T2 (QXcbEventQueue) created by T0 here:
#0 0x55555db82dd4 in pthread_create (/home/alex/Documents/git/zrythm/builddir_cmake/products/bin/zrythm+0x862edd4) (BuildId: 5ea3bdabe140d174ddb18cbc24dc792f25685eea)
#1 0x7ffff540083f in QThread::start(QThread::Priority) /home/alex/Downloads/qt-everywhere-src-6.10.0-beta3/qtbase/src/corelib/thread/qthread_unix.cpp:848:30
SUMMARY: AddressSanitizer: heap-buffer-overflow (/home/alex/Documents/git/zrythm/builddir_cmake/products/bin/zrythm+0x8593955) (BuildId: 5ea3bdabe140d174ddb18cbc24dc792f25685eea) in strndup.part.0
Shadow bytes around the buggy address:
0x7dcff1400e80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7dcff1400f00: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7dcff1400f80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7dcff1401000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0x7dcff1401080: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
=>0x7dcff1401100: 00 00 00 00 00 00 00 00 00 00 00 00 00 00[04]fa
0x7dcff1401180: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x7dcff1401200: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x7dcff1401280: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x7dcff1401300: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
0x7dcff1401380: fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa fa
Shadow byte legend (one shadow byte represents 8 application bytes):
Addressable: 00
Partially addressable: 01 02 03 04 05 06 07
Heap left redzone: fa
Freed heap region: fd
Stack left redzone: f1
Stack mid redzone: f2
Stack right redzone: f3
Stack after return: f5
Stack use after scope: f8
Global redzone: f9
Global init order: f6
Poisoned by user: f7
Container overflow: fc
Array cookie: ac
Intra object redzone: bb
ASan internal: fe
Left alloca redzone: ca
Right alloca redzone: cb
==3120623==ABORTING