vlc | branch: master | Rémi Denis-Courmont <[email protected]> | Mon Mar 4 17:35:55 2019 +0200| [dba3a4e5df324ea33f909d896a663b7a0234a309] | committer: Rémi Denis-Courmont
v4l2: put controls on the parent This is not exactly great, and it (still) will not work properly if there are more than one demux with controls on a single input. But at least it does not rely on racy walking of the objects tree and matching object name, nor racy usage vlc_object_t public members. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=dba3a4e5df324ea33f909d896a663b7a0234a309 --- modules/access/v4l2/access.c | 4 ++-- modules/access/v4l2/demux.c | 4 ++-- modules/access/v4l2/radio.c | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/modules/access/v4l2/access.c b/modules/access/v4l2/access.c index 488838d627..d3c31385f0 100644 --- a/modules/access/v4l2/access.c +++ b/modules/access/v4l2/access.c @@ -86,7 +86,7 @@ int AccessOpen( vlc_object_t *obj ) goto error; } - sys->controls = ControlsInit (VLC_OBJECT(access), fd); + sys->controls = ControlsInit(vlc_object_parent(obj), fd); access->pf_seek = NULL; access->pf_control = AccessControl; return VLC_SUCCESS; @@ -192,7 +192,7 @@ void AccessClose( vlc_object_t *obj ) if (sys->bufv != NULL) StopMmap (sys->fd, sys->bufv, sys->bufc); - ControlsDeinit( obj, sys->controls ); + ControlsDeinit(vlc_object_parent(obj), sys->controls); v4l2_close (sys->fd); free( sys ); } diff --git a/modules/access/v4l2/demux.c b/modules/access/v4l2/demux.c index f6b44b91f1..00f02ee76e 100644 --- a/modules/access/v4l2/demux.c +++ b/modules/access/v4l2/demux.c @@ -103,7 +103,7 @@ int DemuxOpen( vlc_object_t *obj ) goto error; } - sys->controls = ControlsInit (VLC_OBJECT(demux), fd); + sys->controls = ControlsInit(vlc_object_parent(obj), fd); sys->start = vlc_tick_now (); demux->pf_demux = NULL; demux->pf_control = DemuxControl; @@ -623,7 +623,7 @@ void DemuxClose( vlc_object_t *obj ) vlc_join (sys->thread, NULL); if (sys->bufv != NULL) StopMmap (sys->fd, sys->bufv, sys->bufc); - ControlsDeinit( obj, sys->controls ); + ControlsDeinit(vlc_object_parent(obj), sys->controls); v4l2_close (sys->fd); #ifdef ZVBI_COMPILED diff --git a/modules/access/v4l2/radio.c b/modules/access/v4l2/radio.c index 6df6c35ce7..59204aad82 100644 --- a/modules/access/v4l2/radio.c +++ b/modules/access/v4l2/radio.c @@ -100,7 +100,7 @@ int RadioOpen (vlc_object_t *obj) goto error; sys->fd = fd; - sys->controls = ControlsInit (VLC_OBJECT(demux), fd); + sys->controls = ControlsInit(vlc_object_parent(obj), fd); sys->start = vlc_tick_now (); demux->p_sys = sys; @@ -118,7 +118,7 @@ void RadioClose (vlc_object_t *obj) demux_t *demux = (demux_t *)obj; demux_sys_t *sys = demux->p_sys; - ControlsDeinit (obj, sys->controls); + ControlsDeinit(vlc_object_parent(obj), sys->controls); v4l2_close (sys->fd); free (sys); } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
