diff options
| -rw-r--r-- | ibus-chewing-696864-abrt-ibus-1.4.patch | 84 | ||||
| -rw-r--r-- | ibus-chewing.spec | 15 |
2 files changed, 92 insertions, 7 deletions
diff --git a/ibus-chewing-696864-abrt-ibus-1.4.patch b/ibus-chewing-696864-abrt-ibus-1.4.patch new file mode 100644 index 0000000..fc2be85 --- /dev/null +++ b/ibus-chewing-696864-abrt-ibus-1.4.patch @@ -0,0 +1,84 @@ +From ff138d7a18b7577e5f04f852bd3caf87cbc9e7cc Mon Sep 17 00:00:00 2001 +From: Ding-Yi Chen <dingyichen@gmail.com> +Date: Thu, 20 Jan 2011 17:03:07 +1000 +Subject: [PATCH] Addressed comments of yusake + +--- + src/IBusChewingEngine-def.c | 30 ++++++++++++++++++++++-------- + 1 files changed, 22 insertions(+), 8 deletions(-) + +diff --git a/src/IBusChewingEngine-def.c b/src/IBusChewingEngine-def.c +index 90c0384..8c90766 100644 +--- a/src/IBusChewingEngine-def.c ++++ b/src/IBusChewingEngine-def.c +@@ -391,21 +391,29 @@ this option determines how these status be synchronized. Valid values:\n\ + void g_variant_to_g_value(GVariant *gVar, GValue *gValue){ + const GVariantType *gVType=g_variant_get_type(gVar); + if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_BOOLEAN)){ ++ g_value_init(gValue, G_TYPE_BOOLEAN); + g_value_set_boolean(gValue, g_variant_get_boolean(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_UINT16)){ ++ g_value_init(gValue, G_TYPE_UINT); + g_value_set_uint(gValue, g_variant_get_uint16(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_UINT32)){ ++ g_value_init(gValue, G_TYPE_UINT); + g_value_set_uint(gValue, g_variant_get_uint32(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_UINT64)){ ++ g_value_init(gValue, G_TYPE_UINT64); + g_value_set_uint64(gValue, g_variant_get_uint64(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_INT16)){ ++ g_value_init(gValue, G_TYPE_INT); + g_value_set_int(gValue, g_variant_get_int16(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_INT32)){ ++ g_value_init(gValue, G_TYPE_INT); + g_value_set_int(gValue, g_variant_get_int32(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_INT64)){ ++ g_value_init(gValue, G_TYPE_INT); + g_value_set_int64(gValue, g_variant_get_int64(gVar)); + }else if (g_variant_type_is_subtype_of(gVType, G_VARIANT_TYPE_STRING)){ +- g_value_set_int64(gValue, g_variant_get_string(gVar, NULL)); ++ g_value_init(gValue, G_TYPE_STRING); ++ g_value_set_string(gValue, g_variant_get_string(gVar, NULL)); + } + } + +@@ -419,8 +427,14 @@ GVariant *g_value_to_g_variant(GValue *gValue){ + case G_TYPE_UINT: + gVar=g_variant_new_uint32(g_value_get_uint(gValue)); + break; ++ case G_TYPE_UINT64: ++ gVar=g_variant_new_uint64(g_value_get_uint(gValue)); ++ break; + case G_TYPE_INT: +- gVar=g_variant_new_int32(g_value_get_int(gValue)); ++ gVar=g_variant_new_int32(g_value_get_uint(gValue)); ++ break; ++ case G_TYPE_INT64: ++ gVar=g_variant_new_int64(g_value_get_uint(gValue)); + break; + case G_TYPE_STRING: + gVar=g_variant_new_string(g_value_get_string(gValue)); +@@ -435,14 +449,14 @@ GVariant *g_value_to_g_variant(GValue *gValue){ + + static gboolean ibus_chewing_config_get_value(IBusConfig *config, const gchar *section, const gchar *key, GValue *gValue){ + #if IBUS_VERSION >= 10399 +- GVariant *gVar=g_variant_ref_sink(ibus_config_get_value(config, section, key)); +- if (gVar!=NULL){ +- g_variant_to_g_value(gVar, gValue); +- g_variant_unref(gVar); +- return TRUE; +- }else{ ++ GVariant *gVar=ibus_config_get_value(config, section, key); ++ if (gVar==NULL){ + return FALSE; + } ++ g_variant_ref_sink(gVar); ++ g_variant_to_g_value(gVar, gValue); ++ g_variant_unref(gVar); ++ return TRUE; + #else + return ibus_config_get_value(config, section, key, gValue); + #endif +-- +1.7.4.4 + diff --git a/ibus-chewing.spec b/ibus-chewing.spec index 5cf7665..ca43df0 100644 --- a/ibus-chewing.spec +++ b/ibus-chewing.spec @@ -1,14 +1,13 @@ Name: ibus-chewing Version: 1.3.9.2 -Release: 2%{?dist} +Release: 3%{?dist} Summary: The Chewing engine for IBus input platform Summary(zh_TW): IBus新酷音輸入法 License: GPLv2+ Group: System Environment/Libraries URL: http://code.google.com/p/ibus/ Source0: http://ibus.googlecode.com/files/%{name}-%{version}-Source.tar.gz - -BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +Patch0: ibus-chewing-696864-abrt-ibus-1.4.patch BuildRequires: gettext-devel BuildRequires: gtk2-devel @@ -49,6 +48,7 @@ IBus-chewing 是新酷音輸入法的IBus前端。 %prep %setup -q -n %{name}-%{version}-Source +%patch0 -p1 -b .abrt-ibus-1.4 %build # $RPM_OPT_FLAGS should be loaded from cmake macro. @@ -56,7 +56,6 @@ IBus-chewing 是新酷音輸入法的IBus前端。 %__make VERBOSE=1 %{?_smp_mflags} %install -%__rm -rf $RPM_BUILD_ROOT %__make install DESTDIR=$RPM_BUILD_ROOT # We install document using %doc (cd $RPM_BUILD_ROOT//usr/share/doc/ibus-chewing-1.3.9.2 @@ -85,9 +84,6 @@ export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` gconftool-2 --makefile-uninstall-rule %{_sysconfdir}/gconf/schemas/%{name}.schemas > /dev/null || : fi -%clean -%__rm -rf $RPM_BUILD_ROOT - %files -f %{name}.lang %defattr(-,root,root,-) %doc RELEASE-NOTES.txt AUTHORS README ChangeLog COPYING USER-GUIDE @@ -97,6 +93,11 @@ fi %config(noreplace) %{_sysconfdir}/gconf/schemas/%{name}.schemas %changelog +* Tue Apr 26 2011 Daiki Ueno <dueno@redhat.com> - 1.3.9.2-3 +- Apply a patch to fix crash with ibus 1.4 +- Resolves: #696864 +- defining and cleaning buildroot is deprecated (petersen) + * Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.3.9.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild |
