From 69bcb28d3ddb20231580bd09e44d87a769dabcb7 Mon Sep 17 00:00:00 2001
From: Jean-Marc Valin <jmvalin@jmvalin.ca>
Date: Fri, 23 Mar 2018 16:13:59 -0400
Subject: [PATCH] Some missing checks

---
 src/opus_decoder.c             | 2 ++
 src/opus_multistream_decoder.c | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/opus_decoder.c b/src/opus_decoder.c
index 483d918ed..9113638a0 100644
--- a/src/opus_decoder.c
+++ b/src/opus_decoder.c
@@ -769,6 +769,7 @@ int opus_decode_float(OpusDecoder *st, const unsigned char *data,
       else
          return OPUS_INVALID_PACKET;
    }
+   celt_assert(st->channels == 1 || st->channels == 2);
    ALLOC(out, frame_size*st->channels, opus_int16);
 
    ret = opus_decode_native(st, data, len, out, frame_size, decode_fec, 0, NULL, 0);
@@ -806,6 +807,7 @@ int opus_decode(OpusDecoder *st, const unsigned char *data,
       else
          return OPUS_INVALID_PACKET;
    }
+   celt_assert(st->channels == 1 || st->channels == 2);
    ALLOC(out, frame_size*st->channels, float);
 
    ret = opus_decode_native(st, data, len, out, frame_size, decode_fec, 0, NULL, 1);
diff --git a/src/opus_multistream_decoder.c b/src/opus_multistream_decoder.c
index 39699fd02..f767ea0de 100644
--- a/src/opus_multistream_decoder.c
+++ b/src/opus_multistream_decoder.c
@@ -202,7 +202,7 @@ int opus_multistream_decode_native(
 
    VALIDATE_MS_DECODER(st);
    /* Limit frame_size to avoid excessive stack allocations. */
-   opus_multistream_decoder_ctl(st, OPUS_GET_SAMPLE_RATE(&Fs));
+   MUST_SUCCEED(opus_multistream_decoder_ctl(st, OPUS_GET_SAMPLE_RATE(&Fs)));
    frame_size = IMIN(frame_size, Fs/25*3);
    ALLOC(buf, 2*frame_size, opus_val16);
    ptr = (char*)st + align(sizeof(OpusMSDecoder));
-- 
GitLab