box_type_t * r2,
box_type_t * r2_end,
int y1,
- int y2,
- int * overlap);
+ int y2);
static pixman_bool_t
pixman_op (region_type_t * new_reg, /* Place to store result */
int append_non1, /* Append non-overlapping bands
* in region 1 ?
*/
- int append_non2, /* Append non-overlapping bands
+ int append_non2 /* Append non-overlapping bands
* in region 2 ?
*/
- int * overlap)
+ )
{
box_type_t *r1; /* Pointer into first region */
box_type_t *r2; /* Pointer into 2d region */
if (!(*overlap_func)(new_reg,
r1, r1_band_end,
r2, r2_band_end,
- ytop, ybot,
- overlap))
+ ytop, ybot))
{
goto bail;
}
box_type_t * r2,
box_type_t * r2_end,
int y1,
- int y2,
- int * overlap)
+ int y2)
{
int x1;
int x2;
else
{
/* General purpose intersection */
- int overlap; /* result ignored */
- if (!pixman_op (new_reg, reg1, reg2, pixman_region_intersect_o, FALSE, FALSE,
- &overlap))
- {
+ if (!pixman_op (new_reg, reg1, reg2, pixman_region_intersect_o, FALSE, FALSE))
return FALSE;
- }
pixman_set_extents (new_reg);
}
if (r->x1 <= x2) \
{ \
/* Merge with current rectangle */ \
- if (r->x1 < x2) \
- *overlap = TRUE; \
- \
if (x2 < r->x2) \
x2 = r->x2; \
} \
box_type_t * r2,
box_type_t * r2_end,
int y1,
- int y2,
- int * overlap)
+ int y2)
{
box_type_t *next_rect;
int x1; /* left and right side of current union */
region_type_t *reg1,
region_type_t *reg2)
{
- int overlap; /* result ignored */
-
/* Return TRUE if some overlap
* between reg1, reg2
*/
return TRUE;
}
- if (!pixman_op (new_reg, reg1, reg2, pixman_region_union_o, TRUE, TRUE, &overlap))
+ if (!pixman_op (new_reg, reg1, reg2, pixman_region_union_o, TRUE, TRUE))
return FALSE;
new_reg->extents.x1 = MIN (reg1->extents.x1, reg2->extents.x1);
*/
static pixman_bool_t
-validate (region_type_t * badreg,
- int * overlap)
+validate (region_type_t * badreg)
{
/* Descriptor for regions under construction in Step 2. */
typedef struct
region_type_t *hreg; /* ri[j_half].reg */
pixman_bool_t ret = TRUE;
- *overlap = FALSE;
if (!badreg->data)
{
GOOD (badreg);
if (box->x1 <= ri_box->x2)
{
/* Merge it with ri_box */
- if (box->x1 < ri_box->x2)
- *overlap = TRUE;
-
if (box->x2 > ri_box->x2)
ri_box->x2 = box->x2;
}
reg = &ri[j].reg;
hreg = &ri[j + half].reg;
- if (!pixman_op (reg, reg, hreg, pixman_region_union_o, TRUE, TRUE, overlap))
+ if (!pixman_op (reg, reg, hreg, pixman_region_union_o, TRUE, TRUE))
ret = FALSE;
if (hreg->extents.x1 < reg->extents.x1)
box_type_t * r2,
box_type_t * r2_end,
int y1,
- int y2,
- int * overlap)
+ int y2)
{
box_type_t * next_rect;
int x1;
region_type_t *reg_m,
region_type_t *reg_s)
{
- int overlap; /* result ignored */
-
GOOD (reg_m);
GOOD (reg_s);
GOOD (reg_d);
/* Add those rectangles in region 1 that aren't in region 2,
do yucky substraction for overlaps, and
just throw away rectangles in region 2 that aren't in region 1 */
- if (!pixman_op (reg_d, reg_m, reg_s, pixman_region_subtract_o, TRUE, FALSE, &overlap))
+ if (!pixman_op (reg_d, reg_m, reg_s, pixman_region_subtract_o, TRUE, FALSE))
return FALSE;
/*
{
region_type_t inv_reg; /* Quick and dirty region made from the
* bounding box */
- int overlap; /* result ignored */
-
GOOD (reg1);
GOOD (new_reg);
*/
inv_reg.extents = *inv_rect;
inv_reg.data = (region_data_type_t *)NULL;
- if (!pixman_op (new_reg, &inv_reg, reg1, pixman_region_subtract_o, TRUE, FALSE, &overlap))
+ if (!pixman_op (new_reg, &inv_reg, reg1, pixman_region_subtract_o, TRUE, FALSE))
return FALSE;
/*
/* Validate */
region->extents.x1 = region->extents.x2 = 0;
- return validate (region, &i);
+ return validate (region);
}
#define READ(_ptr) (*(_ptr))