mirror of
https://github.com/mpv-player/mpv
synced 2025-04-01 23:00:41 +00:00
mp_image: allow passing NULL to mp_image_new_custom_ref()
A minor simplification. Most callers don't need this, and there's no good reason why the caller should provide an "initializer" like this. (This function calls mp_image_new_dummy_ref(), which has no reason for an initializer either.)
This commit is contained in:
parent
e232f1a731
commit
021cb2c387
@ -69,8 +69,8 @@ struct mp_image *d3d11va_new_ref(ID3D11VideoDecoderOutputView *view,
|
||||
ID3D11VideoDecoderOutputView_GetResource(
|
||||
surface->surface, (ID3D11Resource **)&surface->texture);
|
||||
|
||||
struct mp_image *mpi = mp_image_new_custom_ref(
|
||||
&(struct mp_image){0}, surface, d3d11va_release_img);
|
||||
struct mp_image *mpi =
|
||||
mp_image_new_custom_ref(NULL, surface, d3d11va_release_img);
|
||||
if (!mpi)
|
||||
abort();
|
||||
|
||||
|
@ -72,8 +72,8 @@ struct mp_image *dxva2_new_ref(IDirectXVideoDecoder *decoder,
|
||||
surface->decoder = decoder;
|
||||
IDirectXVideoDecoder_AddRef(surface->decoder);
|
||||
|
||||
struct mp_image *mpi = mp_image_new_custom_ref(&(struct mp_image){0},
|
||||
surface, dxva2_release_img);
|
||||
struct mp_image *mpi =
|
||||
mp_image_new_custom_ref(NULL, surface, dxva2_release_img);
|
||||
if (!mpi)
|
||||
abort();
|
||||
|
||||
|
@ -230,7 +230,7 @@ struct mp_image *mp_image_new_dummy_ref(struct mp_image *img)
|
||||
{
|
||||
struct mp_image *new = talloc_ptrtype(NULL, new);
|
||||
talloc_set_destructor(new, mp_image_destructor);
|
||||
*new = *img;
|
||||
*new = img ? *img : (struct mp_image){0};
|
||||
for (int p = 0; p < MP_MAX_PLANES; p++)
|
||||
new->bufs[p] = NULL;
|
||||
new->hwctx = NULL;
|
||||
|
@ -435,8 +435,7 @@ static void draw_frame(struct vo *vo, struct vo_frame *frame)
|
||||
}
|
||||
mmal_buffer_header_reset(buffer);
|
||||
|
||||
struct mp_image *new_ref = mp_image_new_custom_ref(&(struct mp_image){0},
|
||||
buffer,
|
||||
struct mp_image *new_ref = mp_image_new_custom_ref(NULL, buffer,
|
||||
free_mmal_buffer);
|
||||
if (!new_ref) {
|
||||
mmal_buffer_header_release(buffer);
|
||||
|
@ -268,8 +268,7 @@ static struct mp_image *create_ref(struct mp_vdpau_ctx *ctx, int index)
|
||||
struct surface_ref *ref = talloc_ptrtype(NULL, ref);
|
||||
*ref = (struct surface_ref){ctx, index};
|
||||
struct mp_image *res =
|
||||
mp_image_new_custom_ref(&(struct mp_image){0}, ref,
|
||||
release_decoder_surface);
|
||||
mp_image_new_custom_ref(NULL, ref, release_decoder_surface);
|
||||
if (res) {
|
||||
mp_image_setfmt(res, e->rgb ? IMGFMT_VDPAU_OUTPUT : IMGFMT_VDPAU);
|
||||
mp_image_set_size(res, e->w, e->h);
|
||||
|
Loading…
Reference in New Issue
Block a user