Hello community, here is the log from the commit of package cairo checked in at Sun May 7 15:49:26 CEST 2006. -------- --- GNOME/cairo/cairo.changes 2006-03-23 22:17:32.000000000 +0100 +++ STABLE/cairo/cairo.changes 2006-04-28 18:46:40.000000000 +0200 @@ -1,0 +2,7 @@ +Fri Apr 28 18:46:08 CEST 2006 - mfabian@suse.de + +- Bugzilla #104365: delete fontconfig pattern elements before + trying to add them if the intention is to override default + settings. + +------------------------------------------------------------------- New: ---- bugzilla-104365.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cairo.spec ++++++ --- /var/tmp/diff_new_pack.jQNeya/_old 2006-05-07 15:48:28.000000000 +0200 +++ /var/tmp/diff_new_pack.jQNeya/_new 2006-05-07 15:48:28.000000000 +0200 @@ -17,13 +17,14 @@ Summary: Vector Graphics Library with Cross-Device Output Support URL: http://cairographics.org/ Version: 1.0.2 -Release: 18 +Release: 26 Source0: %name-%version.tar.bz2 Patch1: bugzilla-113545-embedded-bitmap-support.patch Patch2: cairo-remove-requires-private.patch Patch3: cairo-defines.patch Patch4: cairo-1.0.2-depth-fix-1.patch Patch5: cairo-1.0.2-chunk-glyphs-CVE-2006-0528.patch +Patch6: bugzilla-104365.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build Obsoletes: libpixman @@ -79,6 +80,7 @@ %patch3 -p1 %patch4 %patch5 -p1 +%patch6 -p1 %build autoconf @@ -121,6 +123,10 @@ /opt/gnome/share/gtk-doc/html/* %changelog -n cairo +* Fri Apr 28 2006 - mfabian@suse.de +- Bugzilla #104365: delete fontconfig pattern elements before + trying to add them if the intention is to override default + settings. * Thu Mar 23 2006 - gekker@suse.de - Fixes cairo crash in evolution with specific mails (#159675) - CVE-2006-0528 ++++++ bugzilla-104365.patch ++++++ diff -ru cairo-1.0.2.orig/src/cairo-ft-font.c cairo-1.0.2/src/cairo-ft-font.c --- cairo-1.0.2.orig/src/cairo-ft-font.c 2005-10-03 22:44:42.000000000 +0200 +++ cairo-1.0.2/src/cairo-ft-font.c 2006-04-28 18:43:54.000000000 +0200 @@ -2384,16 +2384,12 @@ if (options->antialias != CAIRO_ANTIALIAS_DEFAULT) { - if (FcPatternGet (pattern, FC_ANTIALIAS, 0, &v) == FcResultNoMatch) - { + FcPatternDel (pattern, FC_ANTIALIAS); FcPatternAddBool (pattern, FC_ANTIALIAS, options->antialias != CAIRO_ANTIALIAS_NONE); - } } if (options->antialias != CAIRO_ANTIALIAS_DEFAULT) { - if (FcPatternGet (pattern, FC_RGBA, 0, &v) == FcResultNoMatch) - { int rgba; if (options->antialias == CAIRO_ANTIALIAS_SUBPIXEL) { @@ -2416,20 +2412,16 @@ } else { rgba = FC_RGBA_NONE; } - + FcPatternDel (pattern, FC_RGBA); FcPatternAddInteger (pattern, FC_RGBA, rgba); - } } if (options->hint_style != CAIRO_HINT_STYLE_DEFAULT) { - if (FcPatternGet (pattern, FC_HINTING, 0, &v) == FcResultNoMatch) - { + FcPatternDel (pattern, FC_HINTING); FcPatternAddBool (pattern, FC_HINTING, options->hint_style != CAIRO_HINT_STYLE_NONE); - } #ifdef FC_HINT_STYLE - if (FcPatternGet (pattern, FC_HINT_STYLE, 0, &v) == FcResultNoMatch) { int hint_style; @@ -2445,7 +2437,8 @@ hint_style = FC_HINT_FULL; break; } - + + FcPatternDel (pattern, FC_HINT_STYLE); FcPatternAddInteger (pattern, FC_HINT_STYLE, hint_style); } #endif ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun...