From 90dd6ddbab864aa6c3add55c46a85d7db2c125f6 Mon Sep 17 00:00:00 2001 From: Zhigang Gong Date: Tue, 26 Jun 2012 17:19:16 +0800 Subject: [PATCH] glamor_copyarea: Fixed a bug introduced by 996194... Default return value should be FALSE. Signed-off-by: Zhigang Gong --- glamor/glamor_copyarea.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/glamor/glamor_copyarea.c b/glamor/glamor_copyarea.c index 243c1f28a..ee6f8120f 100644 --- a/glamor/glamor_copyarea.c +++ b/glamor/glamor_copyarea.c @@ -398,7 +398,7 @@ _glamor_copy_n_to_n(DrawablePtr src, RegionRec region; ScreenPtr screen; int src_x_off, src_y_off, dst_x_off, dst_y_off; - Bool ok = TRUE; + Bool ok = FALSE; int force_clip = 0; if (nbox == 0) @@ -426,7 +426,6 @@ _glamor_copy_n_to_n(DrawablePtr src, dispatch = glamor_get_dispatch(glamor_priv); if (!glamor_set_alu(dispatch, gc->alu)) { glamor_put_dispatch(glamor_priv); - ok = FALSE; goto fail; } glamor_put_dispatch(glamor_priv); @@ -549,6 +548,9 @@ _glamor_copy_n_to_n(DrawablePtr src, goto fail; } } + + if (n_src_region == 0) + ok = TRUE; free(clipped_src_regions); } else { RegionTranslate(clipped_dst_regions[i].region, @@ -571,6 +573,8 @@ _glamor_copy_n_to_n(DrawablePtr src, } RegionDestroy(clipped_dst_regions[i].region); } + if (n_dst_region == 0) + ok = TRUE; free(clipped_dst_regions); RegionUninit(®ion); } else {