summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDeepak Rawat <drawat@vmware.com>2018-10-16 15:23:38 -0700
committerDaniel Vetter <daniel.vetter@ffwll.ch>2018-10-17 09:40:55 +0200
commitc7034c780629b6f678dfe5021c38bc820a34e19d (patch)
tree8d1048ae7938d8e81dbc6fe33fcb221d2c0af976 /lib
parent4ca3d1de874bd269b37055f1a4cc6de04ea2d050 (diff)
lib/igt_fb: Check for cairo surface success
For vmwgfx cairo surface creation fails due to stride mismatch, add a igt_require_f() for surface. v2: Check for surface creation failure. Signed-off-by: Deepak Rawat <drawat@vmware.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Diffstat (limited to 'lib')
-rw-r--r--lib/igt_fb.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/igt_fb.c b/lib/igt_fb.c
index 335ece69..1bb6d324 100644
--- a/lib/igt_fb.c
+++ b/lib/igt_fb.c
@@ -1433,6 +1433,10 @@ static void create_cairo_surface__gtt(int fd, struct igt_fb *fb)
cairo_image_surface_create_for_data(ptr,
drm_format_to_cairo(fb->drm_format),
fb->width, fb->height, fb->strides[0]);
+ igt_require_f(cairo_surface_status(fb->cairo_surface) == CAIRO_STATUS_SUCCESS,
+ "Unable to create a cairo surface: %s\n",
+ cairo_status_to_string(cairo_surface_status(fb->cairo_surface)));
+
fb->domain = I915_GEM_DOMAIN_GTT;
cairo_surface_set_user_data(fb->cairo_surface,