diff --git a/libavcodec/svq3.c b/libavcodec/svq3.c
index 16f483432f8928133e14c90e6f5ef3b63ea7c70c..75166066ff20e69e1e2d0dc016a8b61b09f0638c 100644
--- a/libavcodec/svq3.c
+++ b/libavcodec/svq3.c
@@ -1049,7 +1049,7 @@ static int svq3_decode_frame(AVCodecContext *avctx,
             } else if (s->pict_type == AV_PICTURE_TYPE_B && mb_type >= 4) {
                 mb_type += 4;
             }
-            if (mb_type > 33 || svq3_decode_mb(svq3, mb_type)) {
+            if ((unsigned)mb_type > 33 || svq3_decode_mb(svq3, mb_type)) {
                 av_log(h->s.avctx, AV_LOG_ERROR, "error while decoding MB %d %d\n", s->mb_x, s->mb_y);
                 return -1;
             }