Merge commit '5a4e9fe855282a99586050a507d0a486ad39df5b'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 6 Mar 2013 22:56:07 +0000 (23:56 +0100)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 6 Mar 2013 23:01:32 +0000 (00:01 +0100)
* commit '5a4e9fe855282a99586050a507d0a486ad39df5b':
  avcodec/internal: Fix #if DECODE_AUDIO / ENCODE_AUDIO name mismatch
  shorten: use the unsigned type where needed

Merged-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/internal.h
libavcodec/shorten.c

index 14f7918dbda6785e7cfcf6275bb58dbd9feca19c..af9e58eead317030ad021b34cb62bbfd53684626 100644 (file)
@@ -62,7 +62,7 @@ typedef struct AVCodecInternal {
      */
     int is_copy;
 
-#if FF_API_OLD_DECODE_AUDIO
+#if FF_API_OLD_ENCODE_AUDIO
     /**
      * Internal sample count used by avcodec_encode_audio() to fabricate pts.
      * Can be removed along with avcodec_encode_audio().
index 82cc06cf1c068884719c9bf65f99137948ba5572..3a6d6340122a7313d365cc2dfe73f3710e4b8868 100644 (file)
@@ -87,7 +87,7 @@ typedef struct ShortenContext {
     GetBitContext gb;
 
     int min_framesize, max_framesize;
-    int channels;
+    unsigned channels;
 
     int32_t *decoded[MAX_CHANNELS];
     int32_t *decoded_base[MAX_CHANNELS];
@@ -338,7 +338,11 @@ static int read_header(ShortenContext *s)
     s->internal_ftype = get_uint(s, TYPESIZE);
 
     s->channels = get_uint(s, CHANSIZE);
-    if (s->channels <= 0 || s->channels > MAX_CHANNELS) {
+    if (!s->channels) {
+        av_log(s->avctx, AV_LOG_ERROR, "No channels reported\n");
+        return AVERROR_INVALIDDATA;
+    }
+    if (s->channels > MAX_CHANNELS) {
         av_log(s->avctx, AV_LOG_ERROR, "too many channels: %d\n", s->channels);
         s->channels = 0;
         return AVERROR_INVALIDDATA;
@@ -347,10 +351,11 @@ static int read_header(ShortenContext *s)
 
     /* get blocksize if version > 0 */
     if (s->version > 0) {
-        int skip_bytes, blocksize;
+        int skip_bytes;
+        unsigned blocksize;
 
         blocksize = get_uint(s, av_log2(DEFAULT_BLOCK_SIZE));
-        if (!blocksize || blocksize > (unsigned)MAX_BLOCKSIZE) {
+        if (!blocksize || blocksize > MAX_BLOCKSIZE) {
             av_log(s->avctx, AV_LOG_ERROR,
                    "invalid or unsupported block size: %d\n",
                    blocksize);
@@ -500,13 +505,13 @@ static int shorten_decode_frame(AVCodecContext *avctx, void *data,
                 s->bitshift = get_ur_golomb_shorten(&s->gb, BITSHIFTSIZE);
                 break;
             case FN_BLOCKSIZE: {
-                int blocksize = get_uint(s, av_log2(s->blocksize));
+                unsigned blocksize = get_uint(s, av_log2(s->blocksize));
                 if (blocksize > s->blocksize) {
                     av_log(avctx, AV_LOG_ERROR,
                            "Increasing block size is not supported\n");
                     return AVERROR_PATCHWELCOME;
                 }
-                if (!blocksize || blocksize > (unsigned)MAX_BLOCKSIZE) {
+                if (!blocksize || blocksize > MAX_BLOCKSIZE) {
                     av_log(avctx, AV_LOG_ERROR, "invalid or unsupported "
                                                 "block size: %d\n", blocksize);
                     return AVERROR(EINVAL);