[gst-devel] [gst-cvs] ensonic gstreamer: gstreamer/ gstreamer/libs/gst/base/

Stefan Kost ensonic at hora-obscura.de
Mon Dec 17 23:47:13 CET 2007


Hi Mike,

Michael Smith schrieb:
> On Thu, 2007-12-13 at 08:50 -0800, ensonic at kemper.freedesktop.org wrote:
>> CVS Root:       /cvs/gstreamer
>> Module:         gstreamer
>> Changes by:     ensonic
>> Date:           Thu Dec 13 2007  16:50:08 UTC
>>
>> Log message:
>> 	* libs/gst/base/gstbasesink.c:
>> 	* libs/gst/base/gstbasesrc.c:
>> 	* libs/gst/base/gstbasetransform.c:
>> 	  Replace gst_pad_get_parent by GST_OBJECT_PARENT inside streaming
>> 	  thread. Correct log message in gstbasesrc.c.
> 
> Why? 
> 
> This doesn't look right, at least without a much more complete
> explanation.
> 
> gst_pad_get_parent() takes the object lock. You've replaced it with code
> that does not take the object lock, and is not called with the object
> lock taken.
> 
> Please explain or revert. I think reversion is needed.
>
It was discussed on IRC. gst_pad_get_parent() does not take any lock as far as I
see. If it does those should also be released. And reffing the pad that one own
already is not required. You will find that e.g. elements already use the macros
(e.g. gst_queue_loop()). Its not consistet though. Feel free to apply it elsewhere.

Stefan


> 
> Mike
> 
> -------------------------------------------------------------------------
> SF.Net email is sponsored by:
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services
> for just about anything Open Source.
> http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
> _______________________________________________
> gstreamer-cvs mailing list
> gstreamer-cvs at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/gstreamer-cvs





More information about the gstreamer-devel mailing list