regression: crash while playing FLAC playlist
There is a regression between 20241007.2e547beb and 20241018.2c2f154f while attempting to play a FLAC playlist.
rm -rf ~/.{cache,config}/vlc && vlc ~/some.mp4
# Next/Next/Finish/CTRL-q
vlc Artist/*/*.m3u
Looks like executor_downloader
should be checked.
(gdb) bt
#0 0x00007f49abda59c9 in vlc_mutex_trylock (mtx=mtx@entry=0x0) at misc/threads.c:122
#1 0x00007f49abda5a1c in vlc_mutex_lock (mtx=mtx@entry=0x0) at misc/threads.c:103
#2 0x00007f49abd9c3b1 in vlc_executor_Submit (executor=0x0, runnable=runnable@entry=0x7f498800fd28) at misc/executor.c:212
#3 0x00007f49abd27de7 in Submit
(fetcher=0x55a9fc371820, executor=<optimized out>, item=0x55a9fc41c0a0, options=META_REQUEST_OPTION_FETCH_LOCAL, cbs=0x7f49abe0c2b8 <
input_fetcher_callbacks>, userdata=0x55a9fc40ac60) at preparser/fetcher.c:142
#4 0x00007f49abd28ab0 in SearchByScope (task=task@entry=0x7f498c004b30, scope=scope@entry=1) at preparser/fetcher.c:287
#5 0x00007f49abd28c7f in RunSearchLocal (userdata=0x7f498c004b30) at preparser/fetcher.c:383
#6 0x00007f49abd9c296 in ThreadRun (userdata=0x55a9fc3fd8e0) at misc/executor.c:134
#7 0x00007f49abaa760c in start_thread (arg=<optimized out>) at pthread_create.c:444
#8 0x00007f49abb2eaa8 in clone3 () at ../sysdeps/unix/sysv/linux/x86_64/clone3.S:78
gdb) p task
$1 = (struct task *) 0x7f498800fcd0
(gdb) p *task
$2 = {fetcher = 0x55a9fc371820, executor = 0x0, item = 0x55a9fc41c0a0, options = 2, cbs = 0x7f49abe0c2b8 <input_fetcher_callbacks>,
userdata = 0x55a9fc40ac60, interrupt = {lock = {{{value = 0, recursion = 0, owner = 0}, dummy = {value = 0, recursion = 0,
owner = 0}}}, interrupted = false, killed = false, callback = 0x0, data = 0x0}, runnable = {
run = 0x7f49abd28ba0 <RunSearchNetwork>, userdata = 0x7f498800fcd0, node = {prev = 0x0, next = 0x0}}, node = {
prev = 0x7f498c004ba8, next = 0x55a9fc371860}}
(gdb) p fetcher
$1 = (input_fetcher_t *) 0x55a9fc371820
(gdb) p *fetcher
$2 = {executor_local = 0x55a9fc40a8b0, executor_network = 0x0, executor_downloader = 0x0, album_cache = {i_size = 0, p_entries = 0x0},
owner = 0x55a9fc3715e0, lock = {{{value = 0, recursion = 0, owner = 0}, dummy = {value = 0, recursion = 0, owner = 0}}},
submitted_tasks = {prev = 0x7f498800fd48, next = 0x7f498c004ba8}}