[vlc-commits] visual: remove depreciated vlc_object_alive
Edward Wang
git at videolan.org
Sun May 27 08:43:05 CEST 2012
vlc | branch: master | Edward Wang <edward.c.wang at compdigitec.com> | Sat May 26 20:24:22 2012 -0400| [fc5156cc00225de64eb9b8715809c6a84e48b35e] | committer: Jean-Baptiste Kempf
visual: remove depreciated vlc_object_alive
Signed-off-by: Jean-Baptiste Kempf <jb at videolan.org>
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=fc5156cc00225de64eb9b8715809c6a84e48b35e
---
modules/visualization/visual/visual.c | 11 +++++++----
modules/visualization/visual/visual.h | 3 ++-
2 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/modules/visualization/visual/visual.c b/modules/visualization/visual/visual.c
index a91faa7..4ec8ff9 100644
--- a/modules/visualization/visual/visual.c
+++ b/modules/visualization/visual/visual.c
@@ -198,6 +198,7 @@ static int Open( vlc_object_t *p_this )
if( (p_sys->i_height % 2 ) != 0 ) p_sys->i_height--;
if( (p_sys->i_width % 2 ) != 0 ) p_sys->i_width--;
+ p_sys->b_close = false;
p_sys->i_effect = 0;
p_sys->effect = NULL;
@@ -323,13 +324,13 @@ static block_t *DoWork( filter_t *p_filter, block_t *p_in_buf )
picture_t *p_outpic;
/* First, get a new picture */
- while( ( p_outpic = vout_GetPicture( p_sys->p_vout ) ) == NULL)
- { /* XXX: This looks like a bad idea. Don't run to me for sympathy if it
- * dead locks... */
- if( !vlc_object_alive (p_sys->p_vout) )
+ do
+ {
+ if( p_sys->b_close )
return NULL;
msleep( VOUT_OUTMEM_SLEEP );
}
+ while( ( p_outpic = vout_GetPicture( p_sys->p_vout ) ) == NULL);
/* Blank the picture */
for( int i = 0 ; i < p_outpic->i_planes ; i++ )
@@ -364,6 +365,8 @@ static void Close( vlc_object_t *p_this )
filter_t * p_filter = (filter_t *)p_this;
filter_sys_t *p_sys = p_filter->p_sys;
+ p_sys->b_close = true;
+
if( p_filter->p_sys->p_vout )
{
aout_filter_RequestVout( p_filter, p_filter->p_sys->p_vout, 0 );
diff --git a/modules/visualization/visual/visual.h b/modules/visualization/visual/visual.h
index d065db0..50edbfc 100644
--- a/modules/visualization/visual/visual.h
+++ b/modules/visualization/visual/visual.h
@@ -63,7 +63,8 @@ typedef struct
*****************************************************************************/
struct filter_sys_t
{
- vout_thread_t *p_vout;
+ vout_thread_t* p_vout;
+ bool b_close;
int i_width;
int i_height;
More information about the vlc-commits
mailing list