diff options
-rw-r--r-- | src/mesa/main/formats.c | 2 | ||||
-rw-r--r-- | src/mesa/main/formats.h | 8 |
2 files changed, 10 insertions, 0 deletions
diff --git a/src/mesa/main/formats.c b/src/mesa/main/formats.c index 595da773ba5..1f83a5368d7 100644 --- a/src/mesa/main/formats.c +++ b/src/mesa/main/formats.c @@ -1553,6 +1553,8 @@ _mesa_get_format_bytes(gl_format format) { const struct gl_format_info *info = _mesa_get_format_info(format); ASSERT(info->BytesPerBlock); + ASSERT(info->BytesPerBlock <= MAX_PIXEL_BYTES || + _mesa_is_format_compressed(format)); return info->BytesPerBlock; } diff --git a/src/mesa/main/formats.h b/src/mesa/main/formats.h index 3960f028e4a..e6b429d5f37 100644 --- a/src/mesa/main/formats.h +++ b/src/mesa/main/formats.h @@ -47,6 +47,14 @@ extern "C" { /** + * Max number of bytes for any non-compressed pixel format below, or for + * intermediate pixel storage in Mesa. This should never be less than + * 16. Maybe 32 someday? + */ +#define MAX_PIXEL_BYTES 16 + + +/** * Mesa texture/renderbuffer image formats. */ typedef enum |