diff --git a/src/sna/gen4_render.c b/src/sna/gen4_render.c index 2da01375..a87af393 100644 --- a/src/sna/gen4_render.c +++ b/src/sna/gen4_render.c @@ -2424,12 +2424,8 @@ fallback_blt: kgem_submit(&sna->kgem); if (!kgem_check_bo(&sna->kgem, dst_bo, src_bo, NULL)) { kgem_bo_destroy(&sna->kgem, tmp.src.bo); - tmp.src.bo = NULL; - - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } goto fallback_blt; } @@ -2459,12 +2455,9 @@ fallback_blt: return true; fallback_tiled_dst: - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } fallback_tiled: - assert(tmp.src.bo == NULL); if (sna_blt_compare_depth(&src->drawable, &dst->drawable) && sna_blt_copy_boxes(sna, alu, src_bo, src_dx, src_dy, diff --git a/src/sna/gen5_render.c b/src/sna/gen5_render.c index 247dc975..9266f903 100644 --- a/src/sna/gen5_render.c +++ b/src/sna/gen5_render.c @@ -2384,12 +2384,8 @@ fallback_blt: if (!kgem_check_bo(&sna->kgem, dst_bo, src_bo, NULL)) { DBG(("%s: aperture check failed\n", __FUNCTION__)); kgem_bo_destroy(&sna->kgem, tmp.src.bo); - tmp.src.bo = NULL; - - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } goto fallback_blt; } @@ -2439,12 +2435,9 @@ fallback_blt: return true; fallback_tiled_dst: - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } fallback_tiled: - assert(tmp.src.bo == NULL); if (sna_blt_compare_depth(&src->drawable, &dst->drawable) && sna_blt_copy_boxes(sna, alu, src_bo, src_dx, src_dy, diff --git a/src/sna/gen6_render.c b/src/sna/gen6_render.c index 103b9599..a82284d7 100644 --- a/src/sna/gen6_render.c +++ b/src/sna/gen6_render.c @@ -2792,11 +2792,8 @@ fallback_blt: __FUNCTION__)); if (tmp.src.bo != src_bo) kgem_bo_destroy(&sna->kgem, tmp.src.bo); - tmp.src.bo = NULL; - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } goto fallback_blt; } _kgem_set_mode(&sna->kgem, KGEM_RENDER); @@ -2841,12 +2838,9 @@ fallback_blt: return true; fallback_tiled_dst: - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } fallback_tiled: - assert(tmp.src.bo == NULL); if (sna_blt_compare_depth(&src->drawable, &dst->drawable) && sna_blt_copy_boxes(sna, alu, src_bo, src_dx, src_dy, diff --git a/src/sna/gen7_render.c b/src/sna/gen7_render.c index 65c7134b..572e3e30 100644 --- a/src/sna/gen7_render.c +++ b/src/sna/gen7_render.c @@ -3050,11 +3050,8 @@ fallback_blt: if (!kgem_check_bo(&sna->kgem, tmp.dst.bo, tmp.src.bo, NULL)) { if (tmp.src.bo != src_bo) kgem_bo_destroy(&sna->kgem, tmp.src.bo); - tmp.src.bo = NULL; - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } goto fallback_blt; } _kgem_set_mode(&sna->kgem, KGEM_RENDER); @@ -3099,13 +3096,10 @@ fallback_blt: return true; fallback_tiled_dst: - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } fallback_tiled: DBG(("%s: fallback tiled\n", __FUNCTION__)); - assert(tmp.src.bo == NULL); if (sna_blt_compare_depth(&src->drawable, &dst->drawable) && sna_blt_copy_boxes(sna, alu, src_bo, src_dx, src_dy, @@ -3367,12 +3361,8 @@ gen7_render_fill_boxes(struct sna *sna, kgem_submit(&sna->kgem); if (!kgem_check_bo(&sna->kgem, dst_bo, NULL)) { kgem_bo_destroy(&sna->kgem, tmp.src.bo); - tmp.src.bo = NULL; - - if (tmp.redirect.real_bo) { + if (tmp.redirect.real_bo) kgem_bo_destroy(&sna->kgem, tmp.dst.bo); - tmp.redirect.real_bo = NULL; - } return false; }