+++ /dev/null
---- libgdiplus-1.1.5/src/font.c.orig 2005-03-17 19:45:44.000000000 +0100
-+++ libgdiplus-1.1.5/src/font.c 2005-04-03 15:14:44.356047944 +0200
-@@ -529,6 +529,7 @@
- gdip_font_create (const unsigned char *family, int fcslant, int fcweight, GpFont *result)
- {
- cairo_font_t *font = NULL;
-+ cairo_matrix_t *matrix = NULL;
- FcPattern * pat = NULL;
- FT_Library ft_library;
- FT_Error error;
-@@ -547,8 +548,16 @@
- FcPatternDestroy (pat);
- return 0;
- }
-+ matrix = cairo_matrix_create ();
-+ if (matrix == NULL) {
-+ FT_Done_FreeType(ft_library);
-+ FcPatternDestroy (pat);
-+ return 0;
-+ }
-+ cairo_matrix_set_identity (matrix);
-
-- font = cairo_ft_font_create (ft_library, pat);
-+ font = cairo_ft_font_create (pat, matrix);
-+ cairo_matrix_destroy (matrix);
- if (font == NULL) {
- FT_Done_FreeType(ft_library);
- FcPatternDestroy (pat);
---- libgdiplus-1.1.5/src/gdip.h.orig 2005-03-17 19:45:44.000000000 +0100
-+++ libgdiplus-1.1.5/src/gdip.h 2005-04-03 15:07:45.335748712 +0200
-@@ -40,8 +40,8 @@
- #endif
- #endif
-
--#define gdip_cairo_ft_font_lock_face(font) cairo_ft_font_face(font)
--#define gdip_cairo_ft_font_unlock_face(font)
-+#define gdip_cairo_ft_font_lock_face(font) cairo_ft_font_lock_face(font)
-+#define gdip_cairo_ft_font_unlock_face(font) cairo_ft_font_unlock_face(font)
-
- #ifdef WORDS_BIGENDIAN
- #define set_pixel_bgra(pixel,index,b,g,r,a) do {\
---- libgdiplus-1.1.5/src/graphics.c.orig 2005-03-17 19:45:44.000000000 +0100
-+++ libgdiplus-1.1.5/src/graphics.c 2005-04-03 16:00:17.568536488 +0200
-@@ -1652,7 +1652,8 @@
- face = gdip_cairo_ft_font_lock_face(Font);
-
- matrix = cairo_matrix_create();
-- cairo_font_current_transform(Font, matrix);
-+ cairo_matrix_set_identity(matrix);
-+ /* XXX cairo_font_current_transform(Font, matrix); */
- cairo_matrix_scale(matrix, gdiFont->sizeInPixels, gdiFont->sizeInPixels);
-
- ucs4 = g_utf8_to_ucs4 ((const gchar *) utf8, (glong)-1, NULL, &NumOfGlyphs, NULL);
-@@ -1756,7 +1757,7 @@
- */
- SavedMatrix = cairo_matrix_create();
- cairo_set_font (graphics->ct, (cairo_font_t*) font->cairofnt); /* Set our font; this will also be used for later drawing */
-- cairo_font_current_transform(font->cairofnt, SavedMatrix); /* Save the matrix */
-+ /* cairo_font_current_transform(font->cairofnt, SavedMatrix); */ /* Save the matrix */
- cairo_scale_font (graphics->ct, font->sizeInPixels);
- cairo_current_font_extents (graphics->ct, &FontExtent); /* Get the size we're looking for */
- /* cairo_font_set_transform(font->cairofnt, SavedMatrix);*/ /* Restore the matrix */
-@@ -2409,7 +2410,8 @@
- }
-
- Done:
-- cairo_font_set_transform(font->cairofnt, SavedMatrix); /* Restore matrix to original values */
-+ /* cairo_font_set_transform(font->cairofnt, SavedMatrix); */ /* Restore matrix to original values */
-+ cairo_scale_font (graphics->ct, 1.0 / font->sizeInPixels);
-
- /* We need to remove the clip region */
- /* Following line is commented to fix the DrawString bugs */
-@@ -2538,7 +2540,7 @@
- */
- SavedMatrix = cairo_matrix_create();
- cairo_set_font (graphics->ct, (cairo_font_t*) font->cairofnt); /* Set our font; this will also be used for later drawing */
-- cairo_font_current_transform(font->cairofnt, SavedMatrix); /* Save the matrix */
-+ /* cairo_font_current_transform(font->cairofnt, SavedMatrix); */ /* Save the matrix */
- cairo_scale_font (graphics->ct, font->sizeInPixels);
- cairo_current_font_extents (graphics->ct, &FontExtent); /* Get the size we're looking for */
-
-@@ -2998,7 +3000,8 @@
- }
- }
-
-- cairo_font_set_transform(font->cairofnt, SavedMatrix); /* Restore matrix to original values */
-+ /* cairo_font_set_transform(font->cairofnt, SavedMatrix); */ /* Restore matrix to original values */
-+ cairo_scale_font (graphics->ct, 1.0 / font->sizeInPixels);
- cairo_matrix_destroy(SavedMatrix);
-
- /* Cleanup */
---- libgdiplus-1.1.5/configure.in.orig 2005-03-18 14:59:34.000000000 +0100
-+++ libgdiplus-1.1.5/configure.in 2005-04-03 16:03:21.412587944 +0200
-@@ -31,10 +31,10 @@
- CAIRO_CFLAGS='-I$(top_srcdir)/libpixman/src -I$(top_srcdir)/cairo/src'
- AC_DEFINE(USE_INCLUDED_CAIRO,1,[Use Cairo bundled in libgdiplus])
- else
-- if pkg-config --exact-version 0.3.0 cairo; then
-+ if pkg-config --atleast-version 0.4.0 cairo; then
- echo Cairo installation OK
- else
-- AC_MSG_ERROR("Did not find Cairo == 0.3.0");
-+ AC_MSG_ERROR("Did not find Cairo >= 0.4.0");
- fi
-
- CAIRO_LIBS="`pkg-config --libs cairo`"