[cairo] Re: Sorry I broke the text tests! (and status update)

Mathias Hasselmann mathias.hasselmann at gmx.de
Sun Mar 4 22:22:43 PST 2007

Am Sonntag, den 04.03.2007, 16:32 -0500 schrieb Behdad Esfahbod:
> On Sun, 2007-03-04 at 09:44 -0500, Mathias Hasselmann wrote:
> > Ok, so here there is a first patch. Followed the path of
> > CAIRO_MUTEX_INITIALIZE() in every potential entry point. Only
> > difference: CAIRO_MUTEX_INITIALIZE() also invokes code on pthread
> > platforms as I wanted to keep handling of CAIRO_MUTEX_DECLARE simple. 
> > If that minimal performance penalty is not acceptable, I can change
> > that. 
>   - Why does it touch cairo-boilerplate.c?  Please break changes into
> minimal patches.  That helps debugging later.

As they change I was going to made had the potential of creating many
new warnings I've decided to compile with -Werror before starting. Some
of the changes are the result of that step. Should have sent two
separate patches. Will split it.

>   - Yesterday I had an idea: instead of touching all backends, we can
> call CAIRO_MUTEX_INITIALIZE() in these:
> 	_cairo_font_face_init
> 	_cairo_surface_init
> 	_cairo_pattern_init
> This should be enough.

Yup. Had a similiar impression, but don't know the code well enough to
do that. Creative usage of grep, sort -u and diff helped me to spot all
places you've mentioned initially.

> And I didn't get why you had to make it call anything on pthread.  If
> there's no need, lets make it a nop.

This avoids some pre-processor magic in cairo-mutex-private.h, as I am
not a fan of excessive pre-processor magic. But still I know what to do,
so I can create an alternate patchset.


More information about the cairo mailing list