tests: Check that the PNG file's stride matches our internal assumption
Signed-off-by: Bryce Harrington <bryce@osg.samsung.com> Reviewed-By: Derek Foreman <derekf@osg.samsung.com>
This commit is contained in:
@@ -75,6 +75,7 @@ load_surface_from_png(const char *fname) {
|
|||||||
cairo_surface_t *reference_cairo_surface;
|
cairo_surface_t *reference_cairo_surface;
|
||||||
cairo_status_t status;
|
cairo_status_t status;
|
||||||
size_t source_data_size;
|
size_t source_data_size;
|
||||||
|
int bpp;
|
||||||
int stride;
|
int stride;
|
||||||
|
|
||||||
printf("Loading reference image %s\n", fname);
|
printf("Loading reference image %s\n", fname);
|
||||||
@@ -98,6 +99,15 @@ load_surface_from_png(const char *fname) {
|
|||||||
stride = cairo_image_surface_get_stride(reference_cairo_surface);
|
stride = cairo_image_surface_get_stride(reference_cairo_surface);
|
||||||
source_data_size = stride * reference->height;
|
source_data_size = stride * reference->height;
|
||||||
|
|
||||||
|
/* Check that the file's stride matches our assumption */
|
||||||
|
bpp = 4;
|
||||||
|
if (stride != bpp * reference->width) {
|
||||||
|
printf("Mismatched stride for screenshot reference image %s\n", fname);
|
||||||
|
cairo_surface_destroy(reference_cairo_surface);
|
||||||
|
free(reference);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
/* Allocate new buffer for our weston reference, and copy the data from
|
/* Allocate new buffer for our weston reference, and copy the data from
|
||||||
the cairo surface so we can destroy it */
|
the cairo surface so we can destroy it */
|
||||||
reference->data = xzalloc(source_data_size);
|
reference->data = xzalloc(source_data_size);
|
||||||
|
|||||||
Reference in New Issue
Block a user