From 569c1d039a0f1edd90f7025e7d4e64a3cdf57fb6 Mon Sep 17 00:00:00 2001 From: Steve Lhomme Date: Mon, 6 Nov 2023 11:54:22 +0100 Subject: [PATCH] freetype: allocate the YUVP palette early --- modules/text_renderer/freetype/freetype.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/modules/text_renderer/freetype/freetype.c b/modules/text_renderer/freetype/freetype.c index a74c435966..198c8d6cf1 100644 --- a/modules/text_renderer/freetype/freetype.c +++ b/modules/text_renderer/freetype/freetype.c @@ -370,11 +370,16 @@ static int RenderYUVP( const subpicture_region_t *p_region_in, fmt.space = p_region_in->fmt.space; fmt.mastering = p_region_in->fmt.mastering; + fmt.p_palette = p_region_in->fmt.p_palette ? p_region_in->fmt.p_palette : malloc(sizeof(*fmt.p_palette)); + assert( !p_region->p_picture ); p_region->p_picture = picture_NewFromFormat( &fmt ); if( !p_region->p_picture ) + { + if (p_region_in->fmt.p_palette == NULL) + free(fmt.p_palette); return VLC_EGENERIC; - fmt.p_palette = p_region_in->fmt.p_palette ? p_region_in->fmt.p_palette : malloc(sizeof(*fmt.p_palette)); + } const unsigned regionnum = p_region_in->fmt.i_sar_num; const unsigned regionden = p_region_in->fmt.i_sar_den;