Browse code

imgutils: make av_image_get_linesize() return AVERROR(EINVAL) for invalid pixel formats

Stefano Sabatini authored on 2011/05/13 23:27:35
Showing 1 changed files
... ...
@@ -50,6 +50,9 @@ int av_image_get_linesize(enum PixelFormat pix_fmt, int width, int plane)
50 50
     int max_step_comp[4];       /* the component for each plane which has the max pixel step */
51 51
     int s, linesize;
52 52
 
53
+    if ((unsigned)pix_fmt >= PIX_FMT_NB || desc->flags & PIX_FMT_HWACCEL)
54
+        return AVERROR(EINVAL);
55
+
53 56
     av_image_fill_max_pixsteps(max_step, max_step_comp, desc);
54 57
     s = (max_step_comp[plane] == 1 || max_step_comp[plane] == 2) ? desc->log2_chroma_w : 0;
55 58
     linesize = max_step[plane] * (((width + (1 << s) - 1)) >> s);