lavc: fix avcodec_find_best_pix_fmt() when there's more than 64 pixel formats
[ffmpeg.git] / libavcodec / imgconvert.c
index 9efed50..071d312 100644 (file)
@@ -439,7 +439,7 @@ static enum PixelFormat avcodec_find_best_pix_fmt1(int64_t pix_fmt_mask,
     /* find exact color match with smallest size */
     dst_pix_fmt = PIX_FMT_NONE;
     min_dist = 0x7fffffff;
-    for(i = 0;i < PIX_FMT_NB; i++) {
+    for (i = 0; i < FFMIN(PIX_FMT_NB, 64); i++) {
         if (pix_fmt_mask & (1ULL << i)) {
             loss = avcodec_get_pix_fmt_loss(i, src_pix_fmt, has_alpha) & loss_mask;
             if (loss == 0) {