diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2012-01-29 15:43:42 +0000 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2012-01-29 15:43:42 +0000 |
commit | e1e67e8f394480eb4fef1238ccfd49cc36e4b6f2 (patch) | |
tree | 8f6c375d6bde14da7def4cdf2da1aa9e176e62e7 | |
parent | d3fb1e1e89ccf5cefe6add66de4f960ef07cac60 (diff) |
sna: Fix the "trivial" fix to improve error handling
The logic was just backwards and we tried to upload a shadowless GPU
pixmap.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r-- | src/sna/kgem.c | 6 | ||||
-rw-r--r-- | src/sna/sna_render.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/sna/kgem.c b/src/sna/kgem.c index 1d7b8e92..fff2d19b 100644 --- a/src/sna/kgem.c +++ b/src/sna/kgem.c @@ -3490,6 +3490,12 @@ struct kgem_bo *kgem_upload_source_image(struct kgem *kgem, DBG(("%s : (%d, %d), (%d, %d), stride=%d, bpp=%d\n", __FUNCTION__, box->x1, box->y1, box->x2, box->y2, stride, bpp)); + assert(data); + assert(width > 0); + assert(height > 0); + assert(stride); + assert(bpp); + bo = kgem_create_buffer_2d(kgem, width, height, bpp, KGEM_BUFFER_WRITE_INPLACE, &dst); diff --git a/src/sna/sna_render.c b/src/sna/sna_render.c index cbaaafd5..9a98990a 100644 --- a/src/sna/sna_render.c +++ b/src/sna/sna_render.c @@ -1044,7 +1044,7 @@ sna_render_picture_extract(struct sna *sna, return 0; } else { bool upload = true; - if (!texture_is_cpu(pixmap, &box) && + if (!texture_is_cpu(pixmap, &box) || move_to_gpu(pixmap, &box)) { struct sna_pixmap *priv; |