It appears to be a bug with xdg-utils, or at least triggered from there:
Looking at the strace output, there's a sleep process being invoked, which "hangs"/waits in the end:
15202 0.000070 execve("/bin/sleep", ["sleep", "50"], [/* 71 vars */] <unfinished ...>
This originates from /usr/lib/vlc/plugins/misc/libxdg_screensaver_plugin.so (where it gets cloned/created from).
Use of this plugin/feature can be toggled in VLC using the "disable-screensaver" setting, which I have enabled (appears to be the default).
This comes from screensaver_suspend_loop out of xdg-screensaver from xdg-utils:
(while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/null &
This background process seems to be blocking, if stderr is being redirected from vlc, and stdout being read by e.g. grep.
I have not investigated how this worked previously, but it must have changed somehow.
Is there a way to make the "vlc pipeline" end before the subprocess ends itself?
It appears to be a bug with xdg-utils, or at least triggered from there:
Looking at the strace output, there's a sleep process being invoked, which "hangs"/waits in the end:
15202 0.000070 execve( "/bin/sleep" , ["sleep", "50"], [/* 71 vars */] <unfinished ...>
This originates from /usr/lib/ vlc/plugins/ misc/libxdg_ screensaver_ plugin. so (where it gets cloned/created from).
Use of this plugin/feature can be toggled in VLC using the "disable- screensaver" setting, which I have enabled (appears to be the default).
This comes from screensaver_ suspend_ loop out of xdg-screensaver from xdg-utils:
(while [ -f "$screensaver_file" ]; do $*; sleep 50; done) > /dev/null 2> /dev/null &
This background process seems to be blocking, if stderr is being redirected from vlc, and stdout being read by e.g. grep.
I have not investigated how this worked previously, but it must have changed somehow.
Is there a way to make the "vlc pipeline" end before the subprocess ends itself?