Skip to content

rtspsrc: Fix for segmentation fault when handling set/get_parameter requests

gstrtspsrc uses a queue, set_get_param_q, to store set param and get param requests. The requests are put on the queue by calling get_parameters() and set_parameter(). A thread which executs in gst_rtspsrc_thread() then pops requests from the queue and processes them. The crash occured because the queue became empty and a NULL request object was then used. The reason that the queue became empty is that it was popped even when the thread was NOT processing a get parameter or set parameter command. The fix is to make sure that the queue is ONLY popped when the command being processed is a set parameter or get parameter command.

Edited by Sebastian Dröge

Merge request reports