gbm: Assert modifiers and count are copacetic

The API/entry point in mesa already checks the correct behavior,
however, it's possible to be handled by another implementation and those
implementations should not be able to abuse a weird combination of count
and pointer.

This fixes CID 1403193

Cc: Mark Janes <mark.a.janes@intel.com>
Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Ben Widawsky 2017-04-05 10:31:45 -07:00
parent a2eae66b8b
commit 6e907812f8

View file

@ -1266,6 +1266,9 @@ gbm_dri_surface_create(struct gbm_device *gbm,
return NULL;
}
if (count)
assert(modifiers);
/* It's acceptable to create an image with INVALID modifier in the list,
* but it cannot be on the only modifier (since it will certainly fail
* later). While we could easily catch this after modifier creation, doing