libschroedingerenc: do not assert on values from external libraries
authorAlexandra Khirnova <alexandra.khirnova@gmail.com>
Thu, 21 Nov 2013 21:06:31 +0000 (22:06 +0100)
committerAnton Khirnov <anton@khirnov.net>
Sat, 23 Nov 2013 11:08:53 +0000 (12:08 +0100)
Signed-off-by: Anton Khirnov <anton@khirnov.net>
libavcodec/libschroedingerenc.c

index 11cc0eb..d53d846 100644 (file)
@@ -27,9 +27,6 @@
 * (http://dirac.sourceforge.net/specification.html).
 */
 
-#undef NDEBUG
-#include <assert.h>
-
 #include <schroedinger/schro.h>
 #include <schroedinger/schrodebug.h>
 #include <schroedinger/schrovideoformat.h>
@@ -301,8 +298,8 @@ static int libschroedinger_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
         case SCHRO_STATE_HAVE_BUFFER:
         case SCHRO_STATE_END_OF_STREAM:
             enc_buf = schro_encoder_pull(encoder, &presentation_frame);
-            assert(enc_buf->length > 0);
-            assert(enc_buf->length <= buf_size);
+            if (enc_buf->length <= 0)
+                return AVERROR_BUG;
             parse_code = enc_buf->data[4];
 
             /* All non-frame data is prepended to actual frame data to