VLC_EXPORT( void *, vlc_object_create, ( vlc_object_t *, size_t ) ) LIBVLC_MALLOC LIBVLC_USED;
VLC_EXPORT( void, __vlc_object_set_destructor, ( vlc_object_t *, vlc_destructor_t ) );
VLC_EXPORT( void, __vlc_object_attach, ( vlc_object_t *, vlc_object_t * ) );
-VLC_EXPORT( void, __vlc_object_detach, ( vlc_object_t * ) );
#if defined (__GNUC__) && !defined __cplusplus
__attribute__((deprecated))
#endif
#define vlc_object_set_destructor(a,b) \
__vlc_object_set_destructor( VLC_OBJECT(a), b )
-#define vlc_object_detach(a) \
- __vlc_object_detach( VLC_OBJECT(a) )
-
#define vlc_object_attach(a,b) \
__vlc_object_attach( VLC_OBJECT(a), VLC_OBJECT(b) )
/*
* Legacy object stuff that is still used within libvlccore (only)
*/
-#define vlc_object_signal_unlocked( obj )
+void vlc_object_detach (vlc_object_t *);
+#define vlc_object_detach( o ) vlc_object_detach(VLC_OBJECT(o))
/*
* Threads subsystem
p_this->p_parent = NULL;
}
-
+#undef vlc_object_detach
/**
****************************************************************************
* detach object from its parent
*****************************************************************************
* This function removes all links between an object and its parent.
*****************************************************************************/
-void __vlc_object_detach( vlc_object_t *p_this )
+void vlc_object_detach( vlc_object_t *p_this )
{
vlc_object_t *p_parent;
if( !p_this ) return;