[Glamor] [PATCH 8/8] glamor_copyarea: Fixed a bug introduced by 996194...

zhigang.gong at linux.intel.com zhigang.gong at linux.intel.com
Tue Jun 26 03:02:02 PDT 2012


From: Zhigang Gong <zhigang.gong at linux.intel.com>

Default return value should be FALSE.

Signed-off-by: Zhigang Gong <zhigang.gong at linux.intel.com>
---
 src/glamor_copyarea.c |    8 ++++++--
 1 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/glamor_copyarea.c b/src/glamor_copyarea.c
index 243c1f2..ee6f812 100644
--- a/src/glamor_copyarea.c
+++ b/src/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(&region);
 	} else {
-- 
1.7.4.4



More information about the Glamor mailing list