summaryrefslogtreecommitdiff
path: root/src/cairo-clip-private.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2007-10-19 16:04:33 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2007-10-19 23:33:04 +0100
commit5c08226a0f7bc373a96fe75d15ad854910eb3265 (patch)
treee07a14fd83970a97fe978f4c2bf84f642346a96c /src/cairo-clip-private.h
parentc70c2cf6d6a71df54515175af0cb1651b67bdb86 (diff)
downloadcairo-5c08226a0f7bc373a96fe75d15ad854910eb3265.tar.gz
[cairo-clip] Avoid work when all clipped out.
When the clip mask is empty we perform actions like composite 0x0 surfaces, which results in a lot of unnecessary work and allocations. Avoid doing work when we know everything is clip out and take the liberty of freeing any memory associated with the clop state.
Diffstat (limited to 'src/cairo-clip-private.h')
-rw-r--r--src/cairo-clip-private.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/cairo-clip-private.h b/src/cairo-clip-private.h
index c2fe494bb..2e1eabd66 100644
--- a/src/cairo-clip-private.h
+++ b/src/cairo-clip-private.h
@@ -53,6 +53,8 @@ struct _cairo_clip_path {
struct _cairo_clip {
cairo_clip_mode_t mode;
+ cairo_bool_t all_clipped;
+
/*
* Mask-based clipping for cases where the backend
* clipping isn't sufficiently able.