I'm seeing the same bug in the latest Debian testing updated this morning.
Specifically, if I have the following github page open in my browser clicking
the xcomposite window source cases a seg fault as reported.
https://github.com/pjreddie/darknet/issues/553
This results in a window name of "Error on make: 'cuda_runtime.h: No such file
or directory' · Issue #553 · pjreddie/darknet - Brave"and the name_lower
variable appears to have zero values in the struct which is then pushed to
window_strings.array. I can't currently step into dstr_to_lower().
$18 = {name_lower = {array = 0x0, len = 0, capacity = 0}, name = {array =
0x5555570b88e0 "Error on make: 'cuda_runtime.h: No such file or directory' ·
Issue #553 · pjreddie/darknet - Brave", len = 100, capacity = 101}, desc = {
array = 0x555555c24560 "54525967\r\nError on make: 'cuda_runtime.h: No such
file or directory' · Issue #553 · pjreddie/darknet - Brave\r\nbrave-browser",
len = 125, capacity = 126}}
The following is the gdb backtrace:
(gdb) bt
#0 __strcmp_avx2 () at
../sysdeps/x86_64/multiarch/strcmp-avx2.S:283
#1
0x00007ffff3e5de65 in msort_with_tmp (p=p@entry=0x7fffffffc510,
b=b@entry=0x7fffffffc448, n=n@entry=3) at ./stdlib/msort.c:123
#2 0x00007ffff3e5ddb1 in msort_with_tmp (n=3,
b=0x7fffffffc448, p=0x7fffffffc510) at ./stdlib/msort.c:44
#3 msort_with_tmp
(p=p@entry=0x7fffffffc510, b=b@entry=0x7fffffffc430, n=n@entry=6) at
./stdlib/msort.c:53 #4
0x00007ffff3e5dd94 in msort_with_tmp (n=6, b=0x7fffffffc430, p=0x7fffffffc510)
at ./stdlib/msort.c:44
#5 msort_with_tmp (p=p@entry=0x7fffffffc510,
b=b@entry=0x7fffffffc430, n=n@entry=12) at ./stdlib/msort.c:52
#6 0x00007ffff3e5ddb1 in
msort_with_tmp (n=12, b=0x7fffffffc430, p=0x7fffffffc510) at
./stdlib/msort.c:44
#7 msort_with_tmp (p=p@entry=0x7fffffffc510, b=0x7fffffffc3d8,
n=n@entry=23) at ./stdlib/msort.c:53#8 0x00007ffff3e5e23b in msort_with_tmp
(n=23, b=<optimized out>, p=0x7fffffffc510) at ./stdlib/msort.c:44
#9 __GI___qsort_r
(b=b@entry=0x5555570e2320, n=n@entry=23, s=s@entry=72,
cmp=cmp@entry=0x7fffe1fdaac0 <cmp_wi>, arg=arg@entry=0x0) at
./stdlib/msort.c:253
#10 0x00007ffff3e5e3c8 in
__GI_qsort (b=b@entry=0x5555570e2320, n=n@entry=23, s=s@entry=72,
cmp=cmp@entry=0x7fffe1fdaac0 <cmp_wi>) at ./stdlib/msort.c:307#11
0x00007fffe1fdbcb5 in xcompcap_props (unused=<optimized out>) at
./plugins/linux-capture/xcomposite-input.c:750#12 0x00007ffff65629f6 in
obs_source_properties () at /lib/x86_64-linux-gnu/libobs.so.0#13
0x000055555564c3d5 in SourceToolbar::SourceToolbar(QWidget*,
OBSSafeRef<obs_source*, &obs_source_get_ref, &obs_source_release>) (source=...,
parent=0x555555ea89a0, this=0x555556074fd0) at ./libobs/obs.hpp:103#14
ComboSelectToolbar::ComboSelectToolbar(QWidget*, OBSSafeRef<obs_source*,
&obs_source_get_ref, &obs_source_release>) (this=this@entry=0x555556074fd0,
parent=parent@entry=0x555555ea89a0, source=...) at
./UI/context-bar-controls.cpp:116#15 0x000055555564c562 in
WindowCaptureToolbar::WindowCaptureToolbar(QWidget*, OBSSafeRef<obs_source*,
&obs_source_get_ref, &obs_source_release>) (this=this@entry=0x555556074fd0,
parent=0x555555ea89a0, source=...) at ./UI/context-bar-controls.cpp:245#16
0x00005555556f90f5 in OBSBasic::UpdateContextBar(bool) (this=0x555555cf9d60,
force=<optimized out>) at ./UI/window-basic-main.cpp:3373#17 0x00007ffff456e590
in QObject::event(QEvent*) () at /lib/x86_64-linux-gnu/libQt6Core.so.6#18
0x00007ffff53828be in QApplicationPrivate::notify_helper(QObject*, QEvent*) ()
at /lib/x86_64-linux-gnu/libQt6Widgets.so.6#19 0x00007ffff4532a48 in
QCoreApplication::notifyInternal2(QObject*, QEvent*) () at
/lib/x86_64-linux-gnu/libQt6Core.so.6#20 0x00007ffff4532c27 in
QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () at
/lib/x86_64-linux-gnu/libQt6Core.so.6#21 0x00007ffff47198e3 in () at
/lib/x86_64-linux-gnu/libQt6Core.so.6#22 0x00007ffff312b1b4 in () at
/lib/x86_64-linux-gnu/libglib-2.0.so.0#23 0x00007ffff312e2d7 in () at
/lib/x86_64-linux-gnu/libglib-2.0.so.0#24 0x00007ffff312e8f0 in
g_main_context_iteration () at /lib/x86_64-linux-gnu/libglib-2.0.so.0#25
0x00007ffff471768c in
QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) ()
at /lib/x86_64-linux-gnu/libQt6Core.so.6#26 0x00007ffff453c8ea in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () at
/lib/x86_64-linux-gnu/libQt6Core.so.6#27 0x00007ffff4535846 in
QCoreApplication::exec() () at /lib/x86_64-linux-gnu/libQt6Core.so.6#28
0x00005555555f134f in run_program (argv=0x7fffffffd8c8, argc=<optimized out>,
logFile=...) at ./UI/obs-app.cpp:2524#29 main(int, char**) (argc=<optimized
out>, argv=0x7fffffffd8c8) at ./UI/obs-app.cpp:3435