[vlc-commits] Revert "lib: media: Use an atomic refcounter"
Hugo Beauzée-Luyssen
git at videolan.org
Mon Oct 28 11:34:10 CET 2019
vlc | branch: master | Hugo Beauzée-Luyssen <hugo at beauzee.fr> | Thu Oct 24 10:28:35 2019 +0200| [cf14bc8f63bc19092f19354d93f99c289d00afb4] | committer: Hugo Beauzée-Luyssen
Revert "lib: media: Use an atomic refcounter"
This reverts commit 1b07eaa8612eb77a28178a8739a1a23d4dc16cef.
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=cf14bc8f63bc19092f19354d93f99c289d00afb4
---
lib/media.c | 8 +++++---
lib/media_internal.h | 3 +--
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/lib/media.c b/lib/media.c
index 36dee3b9e5..d4e3ba7a62 100644
--- a/lib/media.c
+++ b/lib/media.c
@@ -394,7 +394,7 @@ libvlc_media_t * libvlc_media_new_from_input_item(
p_md->p_libvlc_instance = p_instance;
p_md->p_input_item = p_input_item;
- vlc_atomic_rc_init(&p_md->refcount);
+ p_md->i_refcount = 1;
vlc_cond_init(&p_md->parsed_cond);
vlc_mutex_init(&p_md->parsed_lock);
@@ -547,7 +547,9 @@ void libvlc_media_release( libvlc_media_t *p_md )
if (!p_md)
return;
- if(!vlc_atomic_rc_dec( &p_md->refcount ))
+ p_md->i_refcount--;
+
+ if( p_md->i_refcount > 0 )
return;
uninstall_input_item_observer( p_md );
@@ -583,7 +585,7 @@ void libvlc_media_release( libvlc_media_t *p_md )
void libvlc_media_retain( libvlc_media_t *p_md )
{
assert (p_md);
- vlc_atomic_rc_inc(&p_md->refcount);
+ p_md->i_refcount++;
}
/**************************************************************************
diff --git a/lib/media_internal.h b/lib/media_internal.h
index cfeb056178..aefc731c68 100644
--- a/lib/media_internal.h
+++ b/lib/media_internal.h
@@ -29,13 +29,12 @@
#include <vlc_common.h>
#include <vlc_input.h>
-#include <vlc_atomic.h>
struct libvlc_media_t
{
libvlc_event_manager_t event_manager;
input_item_t *p_input_item;
- vlc_atomic_rc_t refcount;
+ int i_refcount;
libvlc_instance_t *p_libvlc_instance;
libvlc_state_t state;
VLC_FORWARD_DECLARE_OBJECT(libvlc_media_list_t*) p_subitems; /* A media descriptor can have Sub items. This is the only dependancy we really have on media_list */
More information about the vlc-commits
mailing list