summaryrefslogtreecommitdiff
path: root/firefox-1.5-nopangoxft.patch
diff options
context:
space:
mode:
Diffstat (limited to 'firefox-1.5-nopangoxft.patch')
-rw-r--r--firefox-1.5-nopangoxft.patch45
1 files changed, 45 insertions, 0 deletions
diff --git a/firefox-1.5-nopangoxft.patch b/firefox-1.5-nopangoxft.patch
new file mode 100644
index 0000000..becf0a1
--- /dev/null
+++ b/firefox-1.5-nopangoxft.patch
@@ -0,0 +1,45 @@
+--- mozilla/gfx/src/gtk/mozilla-decoder.cpp.noxft 2004-11-07 18:59:23.000000000 -0500
++++ mozilla/gfx/src/gtk/mozilla-decoder.cpp 2006-08-06 18:24:37.000000000 -0400
+@@ -40,10 +40,9 @@
+ #define PANGO_ENABLE_ENGINE
+
+ #include "mozilla-decoder.h"
+-#include <pango/pangoxft.h>
+ #include <pango/pangofc-fontmap.h>
+ #include <pango/pangofc-font.h>
+-#include <gdk/gdkx.h>
++#include <gdk/gdkpango.h>
+
+ #include "nsString.h"
+ #include "nsIPersistentProperties2.h"
+@@ -54,6 +53,7 @@
+ #include "nsCompressedCharMap.h"
+
+ #undef DEBUG_CUSTOM_ENCODER
++#define DEBUG_CUSTOM_ENCODER 1
+
+ G_DEFINE_TYPE (MozillaDecoder, mozilla_decoder, PANGO_TYPE_FC_DECODER)
+
+@@ -145,6 +145,13 @@ mozilla_decoders_init(void)
+ if (initialized)
+ return 0;
+
++ PangoContext* context = gdk_pango_context_get ();
++ PangoFontMap* fontmap = pango_context_get_font_map (context);
++ g_object_unref (context);
++
++ if (!PANGO_IS_FC_FONT_MAP (fontmap))
++ return -1;
++
+ encoder_hash = g_hash_table_new(g_str_hash, g_str_equal);
+ cmap_hash = g_hash_table_new(g_str_hash, g_str_equal);
+ wide_hash = g_hash_table_new(g_str_hash, g_str_equal);
+@@ -208,7 +215,7 @@ mozilla_decoders_init(void)
+ }
+ }
+
+- pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(pango_xft_get_font_map(GDK_DISPLAY(),gdk_x11_get_default_screen())),
++ pango_fc_font_map_add_decoder_find_func(PANGO_FC_FONT_MAP(fontmap),
+ mozilla_find_decoder,
+ NULL,
+ NULL);
bgstack15