[FFmpeg-cvslog] prores: Handle 0 or fewer bits left

Alex Converse git at videolan.org
Sat Oct 1 03:06:38 CEST 2011


ffmpeg | branch: master | Alex Converse <alex.converse at gmail.com> | Wed Sep 28 17:50:51 2011 -0700| [fcbe421cee55e06c62d1d5d1f3cc7c522e7210a4] | committer: Alex Converse

prores: Handle 0 or fewer bits left

show_bits() is undefined when the number of bits is less than or equal to
zero.

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

 libavcodec/proresdec.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavcodec/proresdec.c b/libavcodec/proresdec.c
index 759c10b..c70d145 100644
--- a/libavcodec/proresdec.c
+++ b/libavcodec/proresdec.c
@@ -427,13 +427,13 @@ static inline void decode_ac_coeffs(GetBitContext *gb, DCTELEM *out,
         lev_cb_index = lev_to_cb_index[FFMIN(level, 9)];
 
         bits_left = get_bits_left(gb);
-        if (bits_left <= 8 && !show_bits(gb, bits_left))
+        if (bits_left <= 0 || (bits_left <= 8 && !show_bits(gb, bits_left)))
             return;
 
         run = decode_vlc_codeword(gb, ac_codebook[run_cb_index]);
 
         bits_left = get_bits_left(gb);
-        if (bits_left <= 8 && !show_bits(gb, bits_left))
+        if (bits_left <= 0 || (bits_left <= 8 && !show_bits(gb, bits_left)))
             return;
 
         level = decode_vlc_codeword(gb, ac_codebook[lev_cb_index]) + 1;



More information about the ffmpeg-cvslog mailing list