Commit graph

3930 commits

Author SHA1 Message Date
Chris Wilson
76b871d710 [cairo-image-surface] Remove status return for hard-coded CAIRO_STATUS_SUCCESS.
Remove the status return if the function can only return
CAIRO_STATUS_SUCCESS, and remove the then surplus conditionals.
2007-08-16 15:29:11 +01:00
Chris Wilson
4e39e30d83 [cairo-pen] Remove status from _cairo_pen_find_active_vertex_*()
This pair of functions unconditionally return SUCCESS, so remove the
status return and supporting tests from their callers.
2007-08-16 15:20:25 +01:00
Chris Wilson
b72b06cc22 [cairo-pen] Remove hard-coded CAIRO_STATUS_SUCCESS from _stroke_spline_half()
Remove the status return and update callers as
_cairo_pen_stroke_spline_half() unconditionally returned SUCCESS.
2007-08-16 15:20:06 +01:00
Chris Wilson
e24969a94a [cairo-pdf-surface] cairo_pattern_set_matrix guarantees invertibility.
Be consistent in asserting that the pattern matrix is inverted
successfully and remove a couple of redundant checks.
2007-08-16 15:15:54 +01:00
Chris Wilson
50ebdda3a9 [cairo-pattern] Assert that the pattern->matrix is invertible.
We guarantee when setting the pattern->matrix that it is invertible, so
merely assert that it is so when we attempt to use its inverse.
2007-08-16 15:12:00 +01:00
Chris Wilson
7d853bcabc [cairo-boilerplate-xlib] Check for NULL xrender_format before use.
Testing for XRender support (xrender_format != NULL) after
dereferencing said format doesn't work as intended.
2007-08-16 14:56:27 +01:00
Chris Wilson
bc635da45a [cairo-ft-font] Decrement lock count on error.
As noted in http://bugs.freedesktop.org/show_bug.cgi?id=12026 the error
path of _cairo_ft_unscaled_font_lock_face() failed to reset the
unscaled->lock_count before releasing the mutex and returning NULL.
2007-08-16 12:24:34 +01:00
Adrian Johnson
8881265cca PDF: Fix regression in pdf_surface_set_size() 2007-08-10 20:10:29 +09:30
Søren Sandmann Pedersen
4ca0ca153a Bump pixman dependency to 0.9.4
Also print the download location if the library wasn't found.
2007-08-06 19:24:31 -04:00
Carl Worth
13cae8b5e6 Ensure that a copied pattern gets its own user_data array
This fixes the bug reported here:

	Segfault with cairo_pattern_set_user_data
	https://bugs.freedesktop.org/show_bug.cgi?id=11855
2007-08-06 11:06:47 -07:00
Nis Martensen
027915717d Typo fixes in README files 2007-08-06 10:38:38 -07:00
Adrian Johnson
72c1f5d802 PDF: Fix gradients regression 2007-08-05 00:50:23 +09:30
Vladimir Vukicevic
9bcedd3d6f [win32] compilation fix for win32 2007-08-03 14:20:14 -07:00
Adrian Johnson
f52aa4c13e CFF Subsetting: fix integer encoding bug
Bug report at https://bugzilla.mozilla.org/show_bug.cgi?id=368668
2007-08-02 21:25:46 +09:30
Behdad Esfahbod
ef93f1897c [configure.in] Cleanup after pixman removal and correctly check for pixman 2007-07-31 17:52:13 -04:00
Behdad Esfahbod
4cce3135e0 Clear executable flag off .c file 2007-07-26 18:04:39 -04:00
Chris Wilson
5b0e2e3e2b [cairo-glitz-surface] Compile fix.
Minor corrections to reflect updated structures.
2007-07-23 13:05:13 +01:00
Vladimir Vukicevic
c0a7d33ac6 [fixpt] Fixup malloc usage to use _cairo_malloc_*
Fix some introduced mallocs as a result of the fixed point patches.
2007-07-18 22:46:46 +02:00
Vladimir Vukicevic
b719592428 [fixpt] Fix up compilation post pixman merge 2007-07-18 22:46:46 +02:00
Vladimir Vukicevic
866b485314 [fixpt] Let the compiler calculate the magic double-to-fixed value 2007-07-18 22:46:46 +02:00
Vladimir Vukicevic
0abe5324a5 [fixpt] Create cairo_region wrapper around pixman_region16_t
Insulate region-using code from implementation details;
at some point we'll want to switch to using 32-bit regions.
2007-07-18 22:46:46 +02:00
Vladimir Vukicevic
dc035fecda [fixpt] Fix xcb surface to handle conversion to 16.16 2007-07-18 22:45:22 +02:00
Vladimir Vukicevic
58d9664702 [fixpt] Fix xlib surface to handle conversion to 16.16 2007-07-18 22:45:22 +02:00
Vladimir Vukicevic
aaf94ef6c4 [fixpt] remove dependency on some pixman types
Introduce cairo_gradient_stop_t, and remove pixman dependency
for core pattern types.  Perform conversion from cairo types
to pixman types as necessary in fallback code.
2007-07-18 22:45:21 +02:00
Vladimir Vukicevic
e5fdacae1c [fixpt] fix up image surface to translate to 16.16 for pixman 2007-07-18 22:45:21 +02:00
Vladimir Vukicevic
be3516335c [fixpt] Replace cairo_rectangle_int16_t with cairo_rectangle_int_t
Mostly s/cairo_rectangle_int16_t/cairo_rectangle_int_t/,
as well as definitions to pick cairo_rectangle_int_t.
2007-07-18 22:45:21 +02:00
Vladimir Vukicevic
9c38aa3b96 [fixpt] Use _cairo_fixed_mul insted of manual multiplication 2007-07-18 22:45:21 +02:00
Vladimir Vukicevic
0048a26a44 [fixpt] Make fixed point methods static inline and generic
Move the fixed point methods to static inline versions in
cairo-fixed-private.h, and don't hardcode fixed to be 16.16.
2007-07-18 22:45:21 +02:00
Vladimir Vukicevic
76c32f899a [fixpt] Update quartz surface for new types 2007-07-18 13:08:39 -07:00
Søren Sandmann
290daee4ce Add note about pixman dependency in README 2007-07-10 10:31:23 -04:00
Jinghua Luo
1fac791537 [Glitz] fix compilation.
Separating pixman broke the compilation if glitz backend is enabled,
fix it and all compiler warning as well.
2007-07-10 15:09:04 +08:00
Chris Wilson
5819be398c [check-plt] Ignore entries for pixman.
pixman is now an external library, so we now expect PLT entries.
2007-07-05 19:15:10 +01:00
Chris Wilson
35ef8419a9 [cairo-matrix] Check determinant for invalid numbers.
By checking matrices for invalid determinants, we can prevent the
setting and application of invalid matrices.

The trick used here is that NaNs, as specified by IEE754, always
return FALSE in comparisons. Since we know that the square of the
determinant must be positive definite, then if the comparison is
FALSE the computation must have resulted in a NaN.
2007-07-05 19:15:07 +01:00
Chris Wilson
7eaba5d5fb [configure] Only run PostScript tests if we have ghostscript.
During configure check for the ghostscript command line tool (gs) before
enabling the PostScript surface tests for make check.
2007-07-05 19:02:11 +01:00
Søren Sandmann Pedersen
ef967be630 Merge branch 'master' of git+ssh://sandmann@git.freedesktop.org/git/cairo
Conflicts:

	pixman/src/fbcompose.c
	pixman/src/icimage.c
	pixman/src/pixmanint.h
	pixman/src/pixregionint.h
	src/cairo-clip.c
2007-07-02 08:33:29 -07:00
Vladimir Vukicevic
5c7d2d14d7 [fix] Avoid int overflow when allocating large buffers
This patch introduces three macros: _cairo_malloc_ab,
_cairo_malloc_abc, _cairo_malloc_ab_plus_c and replaces various calls
to malloc(a*b), malloc(a*b*c), and malloc(a*b+c) with them.  The macros
return NULL if int overflow would occur during the allocation.  See
CODING_STYLE for more information.
2007-06-29 09:46:08 -07:00
Carl Worth
fc34073464 Increment version to 1.5.1 after the 1.4.10 release 2007-06-27 14:38:41 -07:00
Carl Worth
107a74885a Increment cairo version to 1.4.10 (and libtool versioning to 13:5:11) 2007-06-27 14:05:56 -07:00
Carl Worth
f595ad2348 Add notes to NEWS for 1.4.10 2007-06-27 14:04:27 -07:00
Carl Worth
2bf3e31da9 Prefer local dpy variable instead of display->display
This was a tiny piece of cleanup that had been erroneously included
with some earlier functional changes, (so it went through a cycle
of being applied and reverted). It's back now in its own commit.
2007-06-27 11:11:36 -07:00
Carl Worth
eebb0df512 Revert "[cairo-xlib-display] Hide XErrors during processing of the work queue."
This reverts commit 285b702ef6.

The recent commit of 0791f342b9 fixes
the same bug that 285b702e was fixing, but without introducing any
performance-killing calls to XSync. So we can drop those now.
2007-06-27 11:08:53 -07:00
Carl Worth
b019cb8a7a Revert "[cairo-xlib-surface] Check for errors before installing a NOOP error handler."
This reverts commit 7016614dd9.

We want to avoid any negative performance impacts due to extra calls
to XSync. The fact that X errors can be missed with this appraoch is
undesirable of course---a proper fix will likely involve moving to
XCB which will hopefully allow us to do the error-checking the way
we want without any performance penalty.
2007-06-27 11:07:07 -07:00
Carl Worth
6d021eb4b6 Merge branch 'ooo-fix' into cairo 2007-06-27 11:01:00 -07:00
Chris Wilson
0791f342b9 Avoid deferring resource cleanup for application drawables
This eliminates X errors propagated from cairo due to cleaning up
Render Pictures after the application had already destroyed the
Drawable they reference. (It would be nice if the X server wouldn't
complain that some cleanup work is already done, but there you
have it.)

This fix has been verified to fix the bug causing OpenOffice.org to
crash as described here:

	XError on right click menus in OOo.
	https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=243811

And unlike other proposed fixes for this bug, this fix does not
introduce any new calls to XSync, (and thereby avoids performance
concerns from those).
2007-06-27 10:53:29 -07:00
Søren Sandmann
0c42dbb192 pixman_image_set_transform() returns FALSE on failure 2007-06-21 22:21:11 -07:00
Søren Sandmann
e0cff78b34 Fix bug where _cairo_image_surface_composite_trapezoids() computed the wrong stride for aliased masks 2007-06-21 22:21:11 -07:00
Søren Sandmann
ca5760a289 Fix initialization of radial patterns 2007-06-21 22:21:11 -07:00
Søren Sandmann
12cc32b674 [pixman] Initial port to standalone pixman library. 2007-06-21 22:21:11 -07:00
Chris Wilson
9109946a1a [cairo-directfb] Correct minor typo.
Correct the reference to _cairo_directfb_surface_is_similar.
2007-06-21 15:40:23 +01:00
Nis Martensen
1e76aa66b2 Update INSTALL about status of backends 2007-06-19 11:48:43 -07:00