In order to know that the earlier code did not use uninitialized
values one needs to know that the lowest four bits of each used
value of pframe_block4x4_coefficients_tab do not vanish identically.
E.g. Coverity did not get this and warned about it in ticket #1466632.
Fix this by slightly rewriting the code.

Signed-off-by: Andreas Rheinhardt <andreas.rheinha...@outlook.com>
---
 libavcodec/mobiclip.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/libavcodec/mobiclip.c b/libavcodec/mobiclip.c
index 6ea1c3eefa..23d64f76f6 100644
--- a/libavcodec/mobiclip.c
+++ b/libavcodec/mobiclip.c
@@ -491,7 +491,7 @@ static int add_pframe_coefficients(AVCodecContext *avctx, 
AVFrame *frame,
     int ret, idx = get_ue_golomb_31(gb);
 
     if (idx == 0) {
-        ret = add_coefficients(avctx, frame, bx, by, size, plane);
+        return add_coefficients(avctx, frame, bx, by, size, plane);
     } else if ((unsigned)idx < 
FF_ARRAY_ELEMS(pframe_block4x4_coefficients_tab)) {
         int flags = pframe_block4x4_coefficients_tab[idx];
 
@@ -505,11 +505,10 @@ static int add_pframe_coefficients(AVCodecContext *avctx, 
AVFrame *frame,
                 flags >>= 1;
             }
         }
+        return 0;
     } else {
-        ret = AVERROR_INVALIDDATA;
+        return AVERROR_INVALIDDATA;
     }
-
-    return ret;
 }
 
 static int adjust(int x, int size)
-- 
2.30.2

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to