[FFmpeg-cvslog] tests/api-flac-test: ensure the frame is writable before writing to it

Anton Khirnov git at videolan.org
Mon Mar 8 10:35:04 EET 2021


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Wed Jan 27 11:43:03 2021 +0100| [ba30fd6c81261c0896e5755a4e1440c2792e2e89] | committer: Anton Khirnov

tests/api-flac-test: ensure the frame is writable before writing to it

The encoder may keep a reference to frames that were sent to it, so the
caller cannot modify them without checking first.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ba30fd6c81261c0896e5755a4e1440c2792e2e89
---

 tests/api/api-flac-test.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/tests/api/api-flac-test.c b/tests/api/api-flac-test.c
index 3fea3258f3..7c96a4d99e 100644
--- a/tests/api/api-flac-test.c
+++ b/tests/api/api-flac-test.c
@@ -154,6 +154,10 @@ static int run_test(AVCodec *enc, AVCodec *dec, AVCodecContext *enc_ctx,
         enc_pkt.data = NULL;
         enc_pkt.size = 0;
 
+        result = av_frame_make_writable(in_frame);
+        if (result < 0)
+            return result;
+
         generate_raw_frame((uint16_t*)(in_frame->data[0]), i, enc_ctx->sample_rate,
                            enc_ctx->channels, enc_ctx->frame_size);
         in_frame_bytes = in_frame->nb_samples * in_frame->channels * sizeof(uint16_t);



More information about the ffmpeg-cvslog mailing list