sna: Wrap image upload with sigtrap
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 28 Nov 2013 13:03:06 +0000 (13:03 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Thu, 28 Nov 2013 13:03:06 +0000 (13:03 +0000)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
src/sna/kgem.c

index 7e36554..f68f5f4 100644 (file)
@@ -6354,13 +6354,21 @@ struct kgem_bo *kgem_upload_source_image(struct kgem *kgem,
        bo = kgem_create_buffer_2d(kgem,
                                   width, height, bpp,
                                   KGEM_BUFFER_WRITE_INPLACE, &dst);
-       if (bo)
-               memcpy_blt(data, dst, bpp,
-                          stride, bo->pitch,
-                          box->x1, box->y1,
-                          0, 0,
-                          width, height);
+       if (bo == NULL)
+               return NULL;
+
+       if (sigtrap_get()) {
+               kgem_bo_destroy(kgem, bo);
+               return NULL;
+       }
+
+       memcpy_blt(data, dst, bpp,
+                  stride, bo->pitch,
+                  box->x1, box->y1,
+                  0, 0,
+                  width, height);
 
+       sigtrap_put();
        return bo;
 }