Skip to content

uridecodebin3: Nullify current item after all play items are freed.

There's a potential race condition with this sort of pipelines on certain systems (depends on the processing load):

GST_DEBUG_DUMP_DOT_DIR=/tmp
gst-launch-1.0 uridecodebin3 uri=file://stream.mp4 ! glupload !
glimagesink --gst-debug=*:4

Right after the pipeline passes from PAUSED to READY, bin_to_dot_file dumps uridecodebin3 properties, but current uri and suburi might be already freed, causing a potential use-after-freed.

This patch makes NULL the current item right after all the play items are freed.

Merge request reports

Loading