[cairo-commit] src/cairo-gstate.c
Chris Wilson
ickle at kemper.freedesktop.org
Sun Jun 6 08:54:14 PDT 2010
src/cairo-gstate.c | 15 +--------------
1 file changed, 1 insertion(+), 14 deletions(-)
New commits:
commit ffeeae462ea0f8c7af326f3bcc66b88881bd8fdd
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date: Sun Jun 6 16:50:34 2010 +0100
Revert "gstate: reduce a couple more operators"
This reverts commit a85c6c1e36273d534f01ade0714b0592b6bed5ab.
Soeren found that this introduced a regression when displaying pages in
evince, and since I'm not overly enthralled at the added complexity here
for very little gain, remove the reduction and leave it clear for a more
complete solution in the future.
diff --git a/src/cairo-gstate.c b/src/cairo-gstate.c
index 459df3b..119bc07 100644
--- a/src/cairo-gstate.c
+++ b/src/cairo-gstate.c
@@ -1008,21 +1008,8 @@ _reduce_op (cairo_gstate_t *gstate)
const cairo_pattern_t *pattern;
op = gstate->op;
- if (op == CAIRO_OPERATOR_IN &&
- gstate->target->is_clear &&
- gstate->target->content & CAIRO_CONTENT_ALPHA)
- {
- return CAIRO_OPERATOR_CLEAR;
- }
-
- if (op != CAIRO_OPERATOR_SOURCE &&
- ! (gstate->target->is_clear &&
- (op == CAIRO_OPERATOR_OVER ||
- (op == CAIRO_OPERATOR_ADD &&
- gstate->target->content & CAIRO_CONTENT_ALPHA))))
- {
+ if (op != CAIRO_OPERATOR_SOURCE)
return op;
- }
pattern = gstate->source;
if (pattern->type == CAIRO_PATTERN_TYPE_SOLID) {
More information about the cairo-commit
mailing list