[FFmpeg-cvslog] avcodec/flacdec: use get_unary() simplify code

Michael Niedermayer git at videolan.org
Wed Oct 30 15:11:48 CET 2013


ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Wed Oct 30 14:58:04 2013 +0100| [4b12930f79eda58f522f8449e67769f1b2b012d7] | committer: Michael Niedermayer

avcodec/flacdec: use get_unary() simplify code

Signed-off-by: Michael Niedermayer <michaelni at gmx.at>

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

 libavcodec/flacdec.c |    9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/libavcodec/flacdec.c b/libavcodec/flacdec.c
index 95623cb..596b24d 100644
--- a/libavcodec/flacdec.c
+++ b/libavcodec/flacdec.c
@@ -45,6 +45,8 @@
 #include "flacdata.h"
 #include "flacdsp.h"
 #include "thread.h"
+#include "unary.h"
+
 
 typedef struct FLACContext {
     FLACSTREAMINFO
@@ -357,7 +359,6 @@ static inline int decode_subframe(FLACContext *s, int channel)
 
     if (get_bits1(&s->gb)) {
         int left = get_bits_left(&s->gb);
-        wasted = 1;
         if ( left < 0 ||
             (left < bps && !show_bits_long(&s->gb, left)) ||
                            !show_bits_long(&s->gb, bps)) {
@@ -366,11 +367,7 @@ static inline int decode_subframe(FLACContext *s, int channel)
                    bps, left);
             return AVERROR_INVALIDDATA;
         }
-        while (!get_bits1(&s->gb)) {
-            wasted++;
-            if (get_bits_left(&s->gb) <= 0)
-                return AVERROR_INVALIDDATA;
-        }
+        wasted = 1 + get_unary(&s->gb, 1, get_bits_left(&s->gb));
         bps -= wasted;
     }
     if (bps > 32) {



More information about the ffmpeg-cvslog mailing list