[FFmpeg-cvslog] avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()

Michael Niedermayer git at videolan.org
Tue Nov 5 22:37:08 EET 2019


ffmpeg | branch: master | Michael Niedermayer <michael at niedermayer.cc> | Fri Nov  1 10:02:29 2019 +0100| [e4fdeb3fcefeb98f2225f7ccded156fb175959c5] | committer: Michael Niedermayer

avformat/nutenc: Do not pass NULL to memcmp() in get_needed_flags()

This compared to the other suggestions is cleaner and easier to understand
keeping the condition in the if() simple.

This affects alot of fate tests.

See: [FFmpeg-devel] [PATCH 05/11] avformat/nutenc: Don't pass NULL to memcmp
See: [FFmpeg-devel] [PATCH]lavf/nutenc: Do not call memcmp() with NULL argument

Fixes: Ticket 7980

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavformat/nutenc.c | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c
index d212f0c245..46dce7722d 100644
--- a/libavformat/nutenc.c
+++ b/libavformat/nutenc.c
@@ -792,11 +792,12 @@ static int get_needed_flags(NUTContext *nut, StreamContext *nus, FrameCode *fc,
         flags |= FLAG_CHECKSUM;
     if (FFABS(pkt->pts - nus->last_pts) > nus->max_pts_distance)
         flags |= FLAG_CHECKSUM;
-    if (pkt->size < nut->header_len[fc->header_idx] ||
-        (pkt->size > 4096 && fc->header_idx)        ||
-        memcmp(pkt->data, nut->header[fc->header_idx],
-               nut->header_len[fc->header_idx]))
-        flags |= FLAG_HEADER_IDX;
+    if (fc->header_idx)
+        if (pkt->size < nut->header_len[fc->header_idx] ||
+            pkt->size > 4096                            ||
+            memcmp(pkt->data, nut->header    [fc->header_idx],
+                              nut->header_len[fc->header_idx]))
+            flags |= FLAG_HEADER_IDX;
 
     return flags | (fc->flags & FLAG_CODED);
 }



More information about the ffmpeg-cvslog mailing list