[cairo-commit] 3 commits - src/cairo-fixed-type-private.h src/cairo-ps-surface.c test/clip-operator-ref.png test/clip-twice-ref.png test/clip-twice-rgb24-ref.png test/copy-path-ps-argb32-ref.png test/copy-path-ps-ref.png test/copy-path-ps-rgb24-ref.png test/linear-gradient-ps-ref.png test/mask-ref.png test/mask-svg-argb32-ref.png test/meta-surface-pattern-svg-argb32-ref.png test/operator-clear-ps-argb32-ref.png test/operator-source-ref.png test/push-group-ref.png test/push-group-rgb24-ref.png test/random-intersections-ps-ref.png test/random-intersections-ref.png test/text-pattern-svg-argb32-ref.png test/text-rotate-ps-ref.png test/trap-clip-ref.png test/unantialiased-shapes-ref.png
Carl Worth
cworth at kemper.freedesktop.org
Thu Feb 28 12:30:33 PST 2008
dev/null |binary
src/cairo-fixed-type-private.h | 2 +-
src/cairo-ps-surface.c | 16 ++++++++--------
test/clip-operator-ref.png |binary
test/clip-twice-ref.png |binary
test/clip-twice-rgb24-ref.png |binary
test/copy-path-ps-ref.png |binary
test/linear-gradient-ps-ref.png |binary
test/mask-ref.png |binary
test/mask-svg-argb32-ref.png |binary
test/meta-surface-pattern-svg-argb32-ref.png |binary
test/operator-clear-ps-argb32-ref.png |binary
test/operator-source-ref.png |binary
test/push-group-ref.png |binary
test/push-group-rgb24-ref.png |binary
test/random-intersections-ps-ref.png |binary
test/random-intersections-ref.png |binary
test/text-pattern-svg-argb32-ref.png |binary
test/text-rotate-ps-ref.png |binary
test/trap-clip-ref.png |binary
test/unantialiased-shapes-ref.png |binary
21 files changed, 9 insertions(+), 9 deletions(-)
New commits:
commit a95b22858fa5d65600faf5163966e18760a3cf35
Merge: c84ec58... 67d5437...
Author: Carl Worth <cworth at cworth.org>
Date: Thu Feb 28 12:30:13 2008 -0800
Merge branch '24.8'
commit 67d543716e294f4af330c52dcc9597e16267425e
Author: Carl Worth <cworth at cworth.org>
Date: Wed Feb 27 20:39:53 2008 -0800
PS: Fix to never break the final ~> that terminates a base85 stream.
This was recently broken in commit 40d5082c24819968a5ee5a8f72e3b9cd61cb6105
which uses a base85-stream but without strings for encapsulating image
data. The bug was that the protection for ~> was only being applied
to the string encodings rather than all base85 streams.
We got lucky recently that the 24.8 change just happened to put the ~>
sequence on the line-wrap boundary so the test suite tripped up the
bug. Otherwise, we could have missed this for quite some time.
diff --git a/src/cairo-ps-surface.c b/src/cairo-ps-surface.c
index 03fa4f7..dde2aeb 100644
--- a/src/cairo-ps-surface.c
+++ b/src/cairo-ps-surface.c
@@ -1628,16 +1628,16 @@ _string_array_stream_write (cairo_output_stream_t *base,
stream->column++;
stream->string_size++;
break;
- /* Have to also be careful to never split the final ~> sequence. */
- case '~':
- _cairo_output_stream_write (stream->output, &c, 1);
- stream->column++;
- stream->string_size++;
- length--;
- c = *data++;
- break;
}
}
+ /* Have to be careful to never split the final ~> sequence. */
+ if (c == '~') {
+ _cairo_output_stream_write (stream->output, &c, 1);
+ stream->column++;
+ stream->string_size++;
+ length--;
+ c = *data++;
+ }
_cairo_output_stream_write (stream->output, &c, 1);
stream->column++;
stream->string_size++;
commit 1df0b001b5b3e1062fa3c3a9070391105fe3d4ba
Author: Carl Worth <cworth at cworth.org>
Date: Wed Feb 27 15:08:18 2008 -0800
Change cairo's fixed-point format from 16.16 to 24.8
The additional 8 bits of integer allows device space to be 256
times larger before applications need to start worrying about
any issues with overflow. So this should help in many cases.
And the loss of 8 bits of sub-pixel precision shouldn't cause
any harm at all---16 was really much more than necessary.
With this change the details of rasterization for several tests
are changed slightly, (particularly on arcs, for example), so
many reference images are updated here.
NOTE: This change is currently breaking get-path-extents for
ps/pdf/svg as well as push-group for ps. We do not yet know
the reasons for these new failures.
diff --git a/src/cairo-fixed-type-private.h b/src/cairo-fixed-type-private.h
index d8305ee..7dd5797 100644
--- a/src/cairo-fixed-type-private.h
+++ b/src/cairo-fixed-type-private.h
@@ -59,7 +59,7 @@ typedef cairo_int128_t cairo_fixed_96_32_t;
* making sure that you compute a double-to-fixed magic number.
* (see below).
*/
-#define CAIRO_FIXED_FRAC_BITS 16
+#define CAIRO_FIXED_FRAC_BITS 8
/* A signed type %CAIRO_FIXED_BITS in size; the main fixed point type */
typedef int32_t cairo_fixed_t;
diff --git a/test/clip-operator-ref.png b/test/clip-operator-ref.png
index 9f4eff0..fe11362 100644
Binary files a/test/clip-operator-ref.png and b/test/clip-operator-ref.png differ
diff --git a/test/clip-twice-ref.png b/test/clip-twice-ref.png
index bd3e3db..8dc86f3 100644
Binary files a/test/clip-twice-ref.png and b/test/clip-twice-ref.png differ
diff --git a/test/clip-twice-rgb24-ref.png b/test/clip-twice-rgb24-ref.png
index 7485594..3f1c013 100644
Binary files a/test/clip-twice-rgb24-ref.png and b/test/clip-twice-rgb24-ref.png differ
diff --git a/test/copy-path-ps-argb32-ref.png b/test/copy-path-ps-argb32-ref.png
deleted file mode 100644
index 647fafb..0000000
Binary files a/test/copy-path-ps-argb32-ref.png and /dev/null differ
diff --git a/test/copy-path-ps-ref.png b/test/copy-path-ps-ref.png
new file mode 100644
index 0000000..f66015b
Binary files /dev/null and b/test/copy-path-ps-ref.png differ
diff --git a/test/copy-path-ps-rgb24-ref.png b/test/copy-path-ps-rgb24-ref.png
deleted file mode 100644
index aa27262..0000000
Binary files a/test/copy-path-ps-rgb24-ref.png and /dev/null differ
diff --git a/test/linear-gradient-ps-ref.png b/test/linear-gradient-ps-ref.png
index 2e0ec89..c2fa71b 100644
Binary files a/test/linear-gradient-ps-ref.png and b/test/linear-gradient-ps-ref.png differ
diff --git a/test/mask-ref.png b/test/mask-ref.png
index 909d9f2..549c130 100644
Binary files a/test/mask-ref.png and b/test/mask-ref.png differ
diff --git a/test/mask-svg-argb32-ref.png b/test/mask-svg-argb32-ref.png
index a6ad0a8..c582859 100644
Binary files a/test/mask-svg-argb32-ref.png and b/test/mask-svg-argb32-ref.png differ
diff --git a/test/meta-surface-pattern-svg-argb32-ref.png b/test/meta-surface-pattern-svg-argb32-ref.png
index bd48555..6250f26 100644
Binary files a/test/meta-surface-pattern-svg-argb32-ref.png and b/test/meta-surface-pattern-svg-argb32-ref.png differ
diff --git a/test/operator-clear-ps-argb32-ref.png b/test/operator-clear-ps-argb32-ref.png
index 1cf666f..f0333a0 100644
Binary files a/test/operator-clear-ps-argb32-ref.png and b/test/operator-clear-ps-argb32-ref.png differ
diff --git a/test/operator-source-ref.png b/test/operator-source-ref.png
index fe59f7f..ccd9be3 100644
Binary files a/test/operator-source-ref.png and b/test/operator-source-ref.png differ
diff --git a/test/push-group-ref.png b/test/push-group-ref.png
index 4d38ac3..84bc184 100644
Binary files a/test/push-group-ref.png and b/test/push-group-ref.png differ
diff --git a/test/push-group-rgb24-ref.png b/test/push-group-rgb24-ref.png
index 18adc4b..cababd9 100644
Binary files a/test/push-group-rgb24-ref.png and b/test/push-group-rgb24-ref.png differ
diff --git a/test/random-intersections-ps-ref.png b/test/random-intersections-ps-ref.png
index 0813685..590c832 100644
Binary files a/test/random-intersections-ps-ref.png and b/test/random-intersections-ps-ref.png differ
diff --git a/test/random-intersections-ref.png b/test/random-intersections-ref.png
index 9f1134a..3188ede 100644
Binary files a/test/random-intersections-ref.png and b/test/random-intersections-ref.png differ
diff --git a/test/text-pattern-svg-argb32-ref.png b/test/text-pattern-svg-argb32-ref.png
index 73e3edf..97d7534 100644
Binary files a/test/text-pattern-svg-argb32-ref.png and b/test/text-pattern-svg-argb32-ref.png differ
diff --git a/test/text-rotate-ps-ref.png b/test/text-rotate-ps-ref.png
index f431ffa..5a724c9 100644
Binary files a/test/text-rotate-ps-ref.png and b/test/text-rotate-ps-ref.png differ
diff --git a/test/trap-clip-ref.png b/test/trap-clip-ref.png
index 9330297..2cbbdb7 100644
Binary files a/test/trap-clip-ref.png and b/test/trap-clip-ref.png differ
diff --git a/test/unantialiased-shapes-ref.png b/test/unantialiased-shapes-ref.png
index d350ad9..128a2a1 100644
Binary files a/test/unantialiased-shapes-ref.png and b/test/unantialiased-shapes-ref.png differ
More information about the cairo-commit
mailing list