[vlc-devel] Locking Issues (OS X)
cmdrclueless at gmail.com
Mon Dec 21 06:50:02 CET 2009
I'm still trying to track down the menu problem that is haunting me in the current OS X code. I'm making progress and learning a bit about the underlying codebase at the same time. During my bug hunt I've run across something that I'm hoping someone with a deeper understanding can help me sort out.
Part of the problem is an uneven amount of holding and releasing in the OS X client. I've started to get familiar with the vlc_object_hold() and vlc_object_release(). I've found out that playlist_CurrentItem() returns a vlc_object that has had vlc_hold_object() applied for the callers convenience. These calls are mainly being applied to the main playlist object (p_input).
I've now discovered another (new?) locking scheme that is being applied to the same object. The two new locking API are vlc_gc_incref() and vlc_gc_decref(). I guess I'm confused on how the two different API interact with each other on the same object. I could really use some hints.
More information about the vlc-devel