mirror of https://code.videolan.org/videolan/vlc
vout: fix direct cast
Use the actual type passed to as opaque to the filter callbacks. The vlc_object may not be the first element in the structure.
This commit is contained in:
parent
894ecb9fc8
commit
da8f676083
|
@ -718,7 +718,8 @@ static int FilterRestartCallback(vlc_object_t *p_this, char const *psz_var,
|
|||
|
||||
static int DelFilterCallbacks(filter_t *filter, void *opaque)
|
||||
{
|
||||
filter_DelProxyCallbacks((vlc_object_t*)opaque, filter,
|
||||
vout_thread_sys_t *sys = opaque;
|
||||
filter_DelProxyCallbacks(VLC_OBJECT(sys), filter,
|
||||
FilterRestartCallback);
|
||||
return VLC_SUCCESS;
|
||||
}
|
||||
|
|
|
@ -1372,14 +1372,16 @@ static int RestartSubFilterCallback(vlc_object_t *obj, char const *psz_var,
|
|||
|
||||
static int SubFilterAddProxyCallbacks(filter_t *filter, void *opaque)
|
||||
{
|
||||
filter_AddProxyCallbacks((vlc_object_t *)opaque, filter,
|
||||
vout_thread_t *vout = opaque;
|
||||
filter_AddProxyCallbacks(VLC_OBJECT(vout), filter,
|
||||
RestartSubFilterCallback);
|
||||
return VLC_SUCCESS;
|
||||
}
|
||||
|
||||
static int SubFilterDelProxyCallbacks(filter_t *filter, void *opaque)
|
||||
{
|
||||
filter_DelProxyCallbacks((vlc_object_t *)opaque, filter,
|
||||
vout_thread_t *vout = opaque;
|
||||
filter_DelProxyCallbacks(VLC_OBJECT(vout), filter,
|
||||
RestartSubFilterCallback);
|
||||
return VLC_SUCCESS;
|
||||
}
|
||||
|
@ -1401,7 +1403,8 @@ static int SubSourceAddProxyCallbacks(filter_t *filter, void *opaque)
|
|||
|
||||
static int SubSourceDelProxyCallbacks(filter_t *filter, void *opaque)
|
||||
{
|
||||
filter_DelProxyCallbacks((vlc_object_t *)opaque, filter,
|
||||
vout_thread_t *vout = opaque;
|
||||
filter_DelProxyCallbacks(VLC_OBJECT(vout), filter,
|
||||
RestartSubSourceCallback);
|
||||
return VLC_SUCCESS;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue