summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Larsson <alexl@redhat.com>2010-03-12 15:40:07 +0100
committerSøren Sandmann Pedersen <ssp@redhat.com>2010-03-17 11:03:05 -0400
commitcba6fbbddce5edfd8e28ef570c493b044761f870 (patch)
tree055eb98163b5e4d2bffed1e5cb4e0ab8e2aa7748
parent7ec023ede155b9dacf574c4323740ef981802aa9 (diff)
Add FAST_PATH_NO_NONE_REPEAT flag
-rw-r--r--pixman/pixman-image.c10
-rw-r--r--pixman/pixman-private.h1
2 files changed, 8 insertions, 3 deletions
diff --git a/pixman/pixman-image.c b/pixman/pixman-image.c
index d09d193..df5b457 100644
--- a/pixman/pixman-image.c
+++ b/pixman/pixman-image.c
@@ -335,16 +335,20 @@ compute_image_info (pixman_image_t *image)
/* Repeat mode */
switch (image->common.repeat)
{
+ case PIXMAN_REPEAT_NONE:
+ flags |= FAST_PATH_NO_REFLECT_REPEAT | FAST_PATH_NO_PAD_REPEAT;
+ break;
+
case PIXMAN_REPEAT_REFLECT:
- flags |= FAST_PATH_NO_PAD_REPEAT;
+ flags |= FAST_PATH_NO_PAD_REPEAT | FAST_PATH_NO_NONE_REPEAT;
break;
case PIXMAN_REPEAT_PAD:
- flags |= FAST_PATH_NO_REFLECT_REPEAT;
+ flags |= FAST_PATH_NO_REFLECT_REPEAT | FAST_PATH_NO_NONE_REPEAT;
break;
default:
- flags |= (FAST_PATH_NO_REFLECT_REPEAT | FAST_PATH_NO_PAD_REPEAT);
+ flags |= FAST_PATH_NO_REFLECT_REPEAT | FAST_PATH_NO_PAD_REPEAT | FAST_PATH_NO_NONE_REPEAT;
break;
}
diff --git a/pixman/pixman-private.h b/pixman/pixman-private.h
index bc41249..65314b9 100644
--- a/pixman/pixman-private.h
+++ b/pixman/pixman-private.h
@@ -579,6 +579,7 @@ _pixman_choose_implementation (void);
#define FAST_PATH_SIMPLE_REPEAT (1 << 12)
#define FAST_PATH_IS_OPAQUE (1 << 13)
#define FAST_PATH_NEEDS_WORKAROUND (1 << 14)
+#define FAST_PATH_NO_NONE_REPEAT (1 << 15)
#define _FAST_PATH_STANDARD_FLAGS \
(FAST_PATH_ID_TRANSFORM | \