diff options
Diffstat (limited to 'src/sna/gen5_render.c')
-rw-r--r-- | src/sna/gen5_render.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sna/gen5_render.c b/src/sna/gen5_render.c index c86cc24c..eec2f836 100644 --- a/src/sna/gen5_render.c +++ b/src/sna/gen5_render.c @@ -2795,7 +2795,11 @@ gen5_render_fill_one(struct sna *sna, PixmapPtr dst, struct kgem_bo *bo, tmp.u.gen5.ve_id = 1; if (!kgem_check_bo(&sna->kgem, bo, NULL)) { - _kgem_submit(&sna->kgem); + kgem_submit(&sna->kgem); + if (!kgem_check_bo(&sna->kgem, bo, NULL)) { + kgem_bo_destroy(&sna->kgem, tmp.src.bo); + return false; + } assert(kgem_check_bo(&sna->kgem, bo, NULL)); } |