diff options
author | Zhigang Gong <zhigang.gong@linux.intel.com> | 2012-06-26 17:19:16 +0800 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2013-12-18 11:23:52 -0800 |
commit | 90dd6ddbab864aa6c3add55c46a85d7db2c125f6 (patch) | |
tree | 335c6e41e468b2355b166b68716adebd3e5b921f /glamor | |
parent | b8dd2a597de455ae985302d1b93d865ef9f37c7b (diff) |
glamor_copyarea: Fixed a bug introduced by 996194...
Default return value should be FALSE.
Signed-off-by: Zhigang Gong <zhigang.gong@linux.intel.com>
Diffstat (limited to 'glamor')
-rw-r--r-- | glamor/glamor_copyarea.c | 8 |
1 files 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 { |