[mingw-pango: 30/37] Added two patches from Kalev Lember to fix a crash on Win32. GNOME Bug #653985

Kalev Lember kalev at fedoraproject.org
Tue Mar 6 20:16:45 UTC 2012


commit f120bfe431819c89d8945622b38529b8301c0b4f
Author: Erik van Pienbroek <epienbro at fedoraproject.org>
Date:   Tue Aug 30 20:37:16 2011 +0300

    Added two patches from Kalev Lember to fix a crash on Win32. GNOME Bug #653985

 mingw32-pango.spec                     |    5 +++
 pango-workaround-bug653985-part1.patch |   29 +++++++++++++++
 pango-workaround-bug653985-part2.patch |   59 ++++++++++++++++++++++++++++++++
 3 files changed, 93 insertions(+), 0 deletions(-)
---
diff --git a/mingw32-pango.spec b/mingw32-pango.spec
index 064b57b..c4a365a 100644
--- a/mingw32-pango.spec
+++ b/mingw32-pango.spec
@@ -23,6 +23,8 @@ Source0:        http://download.gnome.org/sources/pango/1.29/pango-%{version}.ta
 Source1:        pango.modules
 
 Patch1000:      pango_enable_static_build.patch
+Patch1001:      pango-workaround-bug653985-part1.patch
+Patch1002:      pango-workaround-bug653985-part2.patch
 
 BuildArch:      noarch
 
@@ -65,6 +67,8 @@ Static version of the MinGW Windows Pango library.
 %prep
 %setup -q -n pango-%{version}
 %patch1000
+%patch1001 -p1
+%patch1002 -p1
 
 
 %build
@@ -173,6 +177,7 @@ rm -rf $RPM_BUILD_ROOT%{_mingw32_datadir}/gtk-doc
 * Tue Aug 30 2011 Erik van Pienbroek <epienbro at fedoraproject.org> - 1.29.3-1
 - Update to 1.29.3
 - Dropped the dependency on the autotools by rewriting the patch
+- Added two patches from Kalev Lember to fix a crash on Win32. GNOME Bug #653985
 
 * Sun Jul 10 2011 Kalev Lember <kalevlember at gmail.com> - 1.28.4-4
 - Stop using G_CONST_RETURN
diff --git a/pango-workaround-bug653985-part1.patch b/pango-workaround-bug653985-part1.patch
new file mode 100644
index 0000000..efb402d
--- /dev/null
+++ b/pango-workaround-bug653985-part1.patch
@@ -0,0 +1,29 @@
+From eebb94d94054bbb1a3a3d08e47e32de09d93c9b3 Mon Sep 17 00:00:00 2001
+From: Kalev Lember <kalevlember at gmail.com>
+Date: Mon, 11 Jul 2011 10:00:02 +0300
+Subject: [PATCH] Don't define PangoFallbackEngine as abstract type
+
+Fixes a regression from ea702f4 which changed PangoFallbackEngine to be
+abstract.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=653985
+---
+ pango/pango-engine.c |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/pango/pango-engine.c b/pango/pango-engine.c
+index 1a49385..8e87402 100644
+--- a/pango/pango-engine.c
++++ b/pango/pango-engine.c
+@@ -180,7 +180,7 @@ fallback_engine_covers (PangoEngineShape *engine G_GNUC_UNUSED,
+ 
+ static GType pango_fallback_engine_get_type (void);
+ 
+-G_DEFINE_ABSTRACT_TYPE (PangoFallbackEngine, pango_fallback_engine, PANGO_TYPE_ENGINE_SHAPE);
++G_DEFINE_TYPE (PangoFallbackEngine, pango_fallback_engine, PANGO_TYPE_ENGINE_SHAPE);
+ 
+ static void
+ pango_fallback_engine_init (PangoFallbackEngine *self)
+-- 
+1.7.6
+
diff --git a/pango-workaround-bug653985-part2.patch b/pango-workaround-bug653985-part2.patch
new file mode 100644
index 0000000..b56f0fb
--- /dev/null
+++ b/pango-workaround-bug653985-part2.patch
@@ -0,0 +1,59 @@
+From 6a97218b9a2c0268e0cd7cb49d9e090fd9af89ee Mon Sep 17 00:00:00 2001
+From: Kalev Lember <kalevlember at gmail.com>
+Date: Mon, 11 Jul 2011 12:03:45 +0300
+Subject: [PATCH] basic-win32.c: Fix exported symbol names with autotools
+ build
+
+Similar to d9e254f which changed the rest of the modules, moved the
+PANGO_MODULE_PREFIX define from basic-win32.c to the VS9 project file to
+avoid breaking autotools build.
+
+Fixes basic-win32 module loading when pango is built with autotools +
+MinGW.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=653985
+---
+ build/win32/vs9/pangowin32.vcproj |   11 ++++++++++-
+ modules/basic/basic-win32.c       |    4 ----
+ 2 files changed, 10 insertions(+), 5 deletions(-)
+
+diff --git a/build/win32/vs9/pangowin32.vcproj b/build/win32/vs9/pangowin32.vcproj
+index ce34ae7..b2a05b1 100644
+--- a/build/win32/vs9/pangowin32.vcproj
++++ b/build/win32/vs9/pangowin32.vcproj
+@@ -283,7 +283,16 @@
+ 			Filter="cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx"
+ 			UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}"
+ 			>
+-			<File RelativePath="..\..\..\modules\basic\basic-win32.c" />
++			<File RelativePath="..\..\..\modules\basic\basic-win32.c" >
++				<FileConfiguration Name="Debug_FC|Win32"><Tool Name="VCCLCompilerTool"	PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Debug|Win32"><Tool Name="VCCLCompilerTool"	PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Release_FC|Win32"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Release|Win32"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Debug_FC|x64"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Debug|x64"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Release_FC|x64"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++				<FileConfiguration Name="Release|x64"><Tool Name="VCCLCompilerTool" PreprocessorDefinitions="PANGO_MODULE_PREFIX=_pango_basic_win32" /></FileConfiguration>
++			</File>
+ 			<File RelativePath="..\..\..\pango\module-defs-win32.c" />
+ 			<File RelativePath="..\..\..\pango\pangowin32-fontcache.c" />
+ 			<File RelativePath="..\..\..\pango\pangowin32-fontmap.c" />
+diff --git a/modules/basic/basic-win32.c b/modules/basic/basic-win32.c
+index 7a27d50..810d2a2 100644
+--- a/modules/basic/basic-win32.c
++++ b/modules/basic/basic-win32.c
+@@ -33,10 +33,6 @@
+ 
+ extern HFONT _pango_win32_font_get_hfont (PangoFont *font);
+ 
+-#ifndef PANGO_MODULE_PREFIX
+-#define PANGO_MODULE_PREFIX _pango_basic_win32
+-#endif
+-
+ #include "pango-engine.h"
+ #include "pango-utils.h"
+ 
+-- 
+1.7.6
+


More information about the scm-commits mailing list