diff mbox series

[FFmpeg-devel,13/21] avcodec/zlib_wrapper: Use our allocation, freeing functions

Message ID AS1PR01MB9564C659CBE805414417F8438F109@AS1PR01MB9564.eurprd01.prod.exchangelabs.com
State Accepted
Commit 0d629c390ea7a51ffe35b08cff692046ec3efd4d
Headers show
Series [FFmpeg-devel,01/21] avcodec/pngenc: Avoid potentially truncating integers | expand

Checks

Context Check Description
yinshiyou/make_loongarch64 success Make finished
yinshiyou/make_fate_loongarch64 success Make fate finished
andriy/make_x86 success Make finished
andriy/make_fate_x86 success Make fate finished

Commit Message

Andreas Rheinhardt March 15, 2022, 8:06 p.m. UTC
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
---
 libavcodec/zlib_wrapper.c | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/libavcodec/zlib_wrapper.c b/libavcodec/zlib_wrapper.c
index b15d5be2b8..5b93c2c74f 100644
--- a/libavcodec/zlib_wrapper.c
+++ b/libavcodec/zlib_wrapper.c
@@ -23,8 +23,19 @@ 
 
 #include "libavutil/error.h"
 #include "libavutil/log.h"
+#include "libavutil/mem.h"
 #include "zlib_wrapper.h"
 
+static void *alloc_wrapper(void *opaque, uInt items, uInt size)
+{
+    return av_malloc_array(items, size);
+}
+
+static void free_wrapper(void *opaque, void *ptr)
+{
+    av_free(ptr);
+}
+
 int ff_inflate_init(FFZStream *z, void *logctx)
 {
     z_stream *const zstream = &z->zstream;
@@ -33,8 +44,8 @@  int ff_inflate_init(FFZStream *z, void *logctx)
     z->inited = 0;
     zstream->next_in  = Z_NULL;
     zstream->avail_in = 0;
-    zstream->zalloc   = Z_NULL;
-    zstream->zfree    = Z_NULL;
+    zstream->zalloc   = alloc_wrapper;
+    zstream->zfree    = free_wrapper;
     zstream->opaque   = Z_NULL;
 
     zret = inflateInit(zstream);