[cairo-commit] 3 commits - boilerplate/Makefile.am
src/cairo-pdf-surface.c src/cairo-ps-surface.c test/Makefile.am
Behdad Esfahbod
behdad at kemper.freedesktop.org
Thu Mar 1 16:23:00 PST 2007
boilerplate/Makefile.am | 3 ++-
src/cairo-pdf-surface.c | 12 +++++++-----
src/cairo-ps-surface.c | 12 +++++++-----
test/Makefile.am | 5 +++--
4 files changed, 19 insertions(+), 13 deletions(-)
New commits:
diff-tree ec11ca33a7ebcc752218e63c57f861de6e23a86a (from 4ee6cda6e5e69361d3ca247322c92d0ae30e0458)
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Thu Mar 1 19:14:40 2007 -0500
[PS/PDF] Mark CAIRO_EXTEND_PAD for surface patterns as natively supported
since the image surface does not implement that case either, so image
fallbacks have no benefit.
diff --git a/src/cairo-pdf-surface.c b/src/cairo-pdf-surface.c
index 611c7c7..4b47a72 100644
--- a/src/cairo-pdf-surface.c
+++ b/src/cairo-pdf-surface.c
@@ -903,6 +903,8 @@ emit_surface_pattern (cairo_pdf_surface_
_cairo_surface_get_extents (&surface->base, &surface_extents);
switch (extend) {
+ /* We implement EXTEND_PAD like EXTEND_NONE for now */
+ case CAIRO_EXTEND_PAD:
case CAIRO_EXTEND_NONE:
{
/* In PS/PDF, (as far as I can tell), all patterns are
@@ -936,9 +938,8 @@ emit_surface_pattern (cairo_pdf_surface_
xstep = image->width;
ystep = image->height;
break;
- /* All the rest should have been analyzed away, so this case
- * should be unreachable. */
- case CAIRO_EXTEND_PAD:
+ /* All the rest (if any) should have been analyzed away, so this
+ * case should be unreachable. */
default:
ASSERT_NOT_REACHED;
xstep = 0;
@@ -2568,9 +2569,10 @@ _surface_pattern_supported (cairo_surfac
case CAIRO_EXTEND_NONE:
case CAIRO_EXTEND_REPEAT:
case CAIRO_EXTEND_REFLECT:
- return TRUE;
+ /* There's no point returning FALSE for EXTEND_PAD, as the image
+ * surface does not currently implement it either */
case CAIRO_EXTEND_PAD:
- return FALSE;
+ return TRUE;
}
ASSERT_NOT_REACHED;
diff --git a/src/cairo-ps-surface.c b/src/cairo-ps-surface.c
index ac07395..f971cf7 100644
--- a/src/cairo-ps-surface.c
+++ b/src/cairo-ps-surface.c
@@ -1356,9 +1356,10 @@ surface_pattern_supported (const cairo_s
case CAIRO_EXTEND_NONE:
case CAIRO_EXTEND_REPEAT:
case CAIRO_EXTEND_REFLECT:
- return TRUE;
+ /* There's no point returning FALSE for EXTEND_PAD, as the image
+ * surface does not currently implement it either */
case CAIRO_EXTEND_PAD:
- return FALSE;
+ return TRUE;
}
ASSERT_NOT_REACHED;
@@ -1733,6 +1734,8 @@ emit_surface_pattern (cairo_ps_surface_t
bbox_height = image->height;
switch (pattern->base.extend) {
+ /* We implement EXTEND_PAD like EXTEND_NONE for now */
+ case CAIRO_EXTEND_PAD:
case CAIRO_EXTEND_NONE:
{
/* In PS/PDF, (as far as I can tell), all patterns are
@@ -1766,9 +1769,8 @@ emit_surface_pattern (cairo_ps_surface_t
xstep = image->width;
ystep = image->height;
break;
- /* All the rest should have been analyzed away, so these cases
- * should be unreachable. */
- case CAIRO_EXTEND_PAD:
+ /* All the rest (if any) should have been analyzed away, so these
+ * cases should be unreachable. */
default:
ASSERT_NOT_REACHED;
xstep = 0;
diff-tree 4ee6cda6e5e69361d3ca247322c92d0ae30e0458 (from ff06ea1abf2dcfe28a4c1f192782bc85aebfdd92)
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Thu Mar 1 19:13:19 2007 -0500
[test] Move .la dependencies around
diff --git a/test/Makefile.am b/test/Makefile.am
index 1d1a796..9e75e58 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -406,12 +406,13 @@ libcairotest_la_SOURCES =\
buffer-diff.h \
cairo-test.c \
cairo-test.h
-
-LDADD = libcairotest.la \
+libcairotest_la_LIBADD =\
$(top_builddir)/test/pdiff/libpdiff.la \
$(top_builddir)/boilerplate/libcairoboilerplate.la \
$(top_builddir)/src/libcairo.la
+LDADD = libcairotest.la
+
$(top_builddir)/boilerplate/libcairoboilerplate.la:
cd $(top_builddir)/boilerplate && $(MAKE) $(AM_MAKEFLAGS) libcairoboilerplate.la
diff-tree ff06ea1abf2dcfe28a4c1f192782bc85aebfdd92 (from 4b1f450f4cf056b4cc28502dcf72eaf54f257c3a)
Author: Behdad Esfahbod <behdad at behdad.org>
Date: Thu Mar 1 19:12:58 2007 -0500
[boilerplate] Add correct dependency on libcairo.la
diff --git a/boilerplate/Makefile.am b/boilerplate/Makefile.am
index 81ae000..21423e0 100644
--- a/boilerplate/Makefile.am
+++ b/boilerplate/Makefile.am
@@ -1,10 +1,12 @@
noinst_LTLIBRARIES = libcairoboilerplate.la
+
libcairoboilerplate_la_SOURCES =\
cairo-boilerplate.c \
cairo-boilerplate.h \
xmalloc.c \
xmalloc.h
+libcairoboilerplate_la_LIBADD = $(top_builddir)/src/libcairo.la
if CAIRO_HAS_BEOS_SURFACE
libcairoboilerplate_la_SOURCES += cairo-test-beos.cpp cairo-test-beos.h
@@ -16,7 +18,6 @@ if CAIRO_HAS_DIRECTFB_SURFACE
libcairoboilerplate_la_SOURCES += cairo-test-directfb.c cairo-test-directfb.h
endif
-libcairoboilerplate_la_LIBADD =
if CAIRO_CAN_TEST_GLITZ_AGL_SURFACE
libcairoboilerplate_la_LIBADD += $(GLITZ_AGL_LIBS)
endif
More information about the cairo-commit
mailing list