public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
* [rpms/ibus] autotool: Bug 1876877 - Fix to pull the correct language with no iso639 variants
@ 2026-05-31 2:07 Takao Fujiwara
0 siblings, 0 replies; only message in thread
From: Takao Fujiwara @ 2026-05-31 2:07 UTC (permalink / raw)
To: git-commits
A new commit has been pushed.
Repo : rpms/ibus
Branch : autotool
Commit : 36d4212fc26def2c067e83577e0c65db46fdc036
Author : Takao Fujiwara <tfujiwar@redhat.com>
Date : 2020-09-09T19:25:51+09:00
Stats : +296/-3 in 4 file(s)
URL : https://src.fedoraproject.org/rpms/ibus/c/36d4212fc26def2c067e83577e0c65db46fdc036?branch=autotool
Log:
Bug 1876877 - Fix to pull the correct language with no iso639 variants
- Accept xdigits only for Unicode typing
---
diff --git a/.gitignore b/.gitignore
index 81aa68f..fda1314 100644
--- a/.gitignore
+++ b/.gitignore
@@ -57,3 +57,4 @@ ibus-1.3.6.tar.gz
/ibus-1.5.21.tar.gz
/ibus-1.5.22.tar.gz
/ibus-simple-1.5.22.20200827.xml.gz
+/ibus-simple-1.5.22.20200909.xml.gz
diff --git a/ibus-HEAD.patch b/ibus-HEAD.patch
index 8aebc85..a0f6e3a 100644
--- a/ibus-HEAD.patch
+++ b/ibus-HEAD.patch
@@ -2368,3 +2368,291 @@ index 11bcc6c2..a6e4194b 100755
--
2.24.1
+From 00adea6d16939e2da35ede7f2ecf3fe0a2156fa6 Mon Sep 17 00:00:00 2001
+From: "ntfs.hard" <ntfs.hard@gmail.com>
+Date: Thu, 3 Sep 2020 14:59:35 +0900
+Subject: [PATCH] Fix for several error spotted by static analyzer
+
+- ibuscomposetable.c, ibusxml.c:
+Check size before memory access
+
+- inputcontext.c:
+Use logical operator for bool type variables
+
+- config.c:
+Extra break removed
+
+BUG=https://github.com/ibus/ibus/pull/2242
+---
+ bus/inputcontext.c | 6 +++---
+ src/ibuscomposetable.c | 2 +-
+ src/ibusxml.c | 2 +-
+ 4 files changed, 5 insertions(+), 6 deletions(-)
+
+diff --git a/bus/inputcontext.c b/bus/inputcontext.c
+index ceea4b60..8d84fd05 100644
+--- a/bus/inputcontext.c
++++ b/bus/inputcontext.c
+@@ -2842,11 +2842,11 @@ bus_input_context_update_preedit_text (BusInputContext *context,
+ context->preedit_text = (IBusText *) g_object_ref_sink (text ? text :
+ text_empty);
+ context->preedit_cursor_pos = cursor_pos;
+- if (use_extension)
++ if (use_extension) {
+ context->preedit_visible = visible;
+- if (use_extension)
+ context->preedit_mode = mode;
+- extension_visible = context->preedit_visible |
++ }
++ extension_visible = context->preedit_visible ||
+ (context->emoji_extension != NULL);
+
+ if (use_extension && context->emoji_extension) {
+diff --git a/src/ibuscomposetable.c b/src/ibuscomposetable.c
+index c50be2b3..ef20469c 100644
+--- a/src/ibuscomposetable.c
++++ b/src/ibuscomposetable.c
+@@ -382,7 +382,7 @@ ibus_compose_list_check_duplicated (GList *compose_list,
+
+ if (n_outputs == unichar_length (output_chars)) {
+ int j = 0;
+- while (compose_data->values[j] && j < n_outputs) {
++ while (j < n_outputs && compose_data->values[j]) {
+ if (compose_data->values[j] != output_chars[j])
+ break;
+ ++j;
+diff --git a/src/ibusxml.c b/src/ibusxml.c
+index 266a8207..b6d0feb8 100644
+--- a/src/ibusxml.c
++++ b/src/ibusxml.c
+@@ -148,7 +148,7 @@ _is_space (const gchar *text,
+ {
+ gsize i = 0;
+
+- for (i = 0; text[i] != '\0' && i < text_len; i++) {
++ for (i = 0; i < text_len && text[i] != '\0'; i++) {
+ switch (text[i]) {
+ case '\t':
+ case ' ':
+--
+2.24.1
+
+From 7caead10d3698ef1ecaa97e6e122e27a720d612e Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Thu, 3 Sep 2020 21:21:31 +0900
+Subject: [PATCH] Fix string formats in translatable strings
+
+---
+ data/dconf/org.freedesktop.ibus.gschema.xml | 2 +-
+ setup/enginetreeview.py | 6 +++---
+ setup/main.py | 6 +++---
+ tools/main.vala | 4 ++--
+ 6 files changed, 16 insertions(+), 16 deletions(-)
+
+diff --git a/data/dconf/org.freedesktop.ibus.gschema.xml b/data/dconf/org.freedesktop.ibus.gschema.xml
+index 11a179a6..a79e9296 100644
+--- a/data/dconf/org.freedesktop.ibus.gschema.xml
++++ b/data/dconf/org.freedesktop.ibus.gschema.xml
+@@ -195,7 +195,7 @@
+ <key name="lang" type="s">
+ <default>'en'</default>
+ <summary>Default language for emoji dictionary</summary>
+- <description>Choose a default language of emoji dictionaries on the emoji dialog. The value $lang is applied to /usr/share/ibus/dicts/emoji-$lang.dict</description>
++ <description>Choose a default language of emoji dictionaries on the emoji dialog. The value $lang is applied to /usr/share/ibus/dicts/emoji-$lang.dict .</description>
+ </key>
+ <key name="favorites" type="as">
+ <default>[]</default>
+diff --git a/setup/enginetreeview.py b/setup/enginetreeview.py
+index aea84593..8534de5e 100644
+--- a/setup/enginetreeview.py
++++ b/setup/enginetreeview.py
+@@ -3,8 +3,8 @@
+ # ibus - The Input Bus
+ #
+ # Copyright (c) 2007-2015 Peng Huang <shawn.p.huang@gmail.com>
+-# Copyright (c) 2014-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
+-# Copyright (c) 2007-2018 Red Hat, Inc.
++# Copyright (c) 2014-2020 Takao Fujiwara <takao.fujiwara1@gmail.com>
++# Copyright (c) 2007-2020 Red Hat, Inc.
+ #
+ # This library is free software; you can redistribute it and/or
+ # modify it under the terms of the GNU Lesser General Public
+@@ -93,7 +93,7 @@ class EngineTreeView(Gtk.TreeView):
+ renderer.set_property("has-entry", False)
+ renderer.set_property("editable", True)
+
+- column = Gtk.TreeViewColumn(_("Kbd"))
++ column = Gtk.TreeViewColumn("Kbd")
+ column.set_expand(False)
+ column.set_fixed_width(32)
+ column.set_sizing(Gtk.TreeViewColumnSizing.FIXED)
+diff --git a/setup/main.py b/setup/main.py
+index 8c8d7a47..673c8cde 100644
+--- a/setup/main.py
++++ b/setup/main.py
+@@ -4,8 +4,8 @@
+ # ibus - The Input Bus
+ #
+ # Copyright (c) 2007-2016 Peng Huang <shawn.p.huang@gmail.com>
+-# Copyright (c) 2010-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
+-# Copyright (c) 2007-2016 Red Hat, Inc.
++# Copyright (c) 2010-2020 Takao Fujiwara <takao.fujiwara1@gmail.com>
++# Copyright (c) 2007-2020 Red Hat, Inc.
+ #
+ # This library is free software; you can redistribute it and/or
+ # modify it under the terms of the GNU Lesser General Public
+@@ -547,7 +547,7 @@ class Setup(object):
+ self.__flush_gtk_events()
+ else:
+ # Translators: %d == 5 currently
+- message = _("IBus daemon could not be started in %d seconds")
++ message = _("IBus daemon could not be started in %d seconds.")
+ dlg = Gtk.MessageDialog(message_type = Gtk.MessageType.INFO,
+ buttons = Gtk.ButtonsType.OK,
+ text = message % timeout)
+diff --git a/tools/main.vala b/tools/main.vala
+index bf9c0fc9..26e7fd88 100644
+--- a/tools/main.vala
++++ b/tools/main.vala
+@@ -3,7 +3,7 @@
+ * ibus - The Input Bus
+ *
+ * Copyright(c) 2013 Peng Huang <shawn.p.huang@gmail.com>
+- * Copyright(c) 2015-2018 Takao Fujiwara <takao.fujiwara1@gmail.com>
++ * Copyright(c) 2015-2020 Takao Fujiwara <takao.fujiwara1@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -453,7 +453,7 @@ const CommandEntry commands[] = {
+ { "read-config", N_("Show the configuration values"), read_config },
+ { "reset-config", N_("Reset the configuration values"), reset_config },
+ #if EMOJI_DICT
+- { "emoji", N_("Save emoji on dialog to clipboard "), emoji_dialog },
++ { "emoji", N_("Save emoji on dialog to clipboard"), emoji_dialog },
+ #endif
+ { "help", N_("Show this information"), print_help }
+ };
+--
+2.24.1
+
+From a440942a62c46578377a8679c48146f597e338a4 Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Wed, 9 Sep 2020 18:36:18 +0900
+Subject: [PATCH] ui/gtk3: Accept xdigits only for Unicode typing
+
+Ctrl-Shift-u behavior now follows GTK's one.
+
+BUG=https://github.com/ibus/ibus/issues/2249
+---
+ ui/gtk3/panelbinding.vala | 8 +++++---
+ 1 file changed, 5 insertions(+), 3 deletions(-)
+
+diff --git a/ui/gtk3/panelbinding.vala b/ui/gtk3/panelbinding.vala
+index 01c43b0d..861255b1 100644
+--- a/ui/gtk3/panelbinding.vala
++++ b/ui/gtk3/panelbinding.vala
+@@ -3,7 +3,7 @@
+ * ibus - The Input Bus
+ *
+ * Copyright(c) 2018 Peng Huang <shawn.p.huang@gmail.com>
+- * Copyright(c) 2018 Takao Fujwiara <takao.fujiwara1@gmail.com>
++ * Copyright(c) 2018-2020 Takao Fujwiara <takao.fujiwara1@gmail.com>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+@@ -190,7 +190,7 @@ class Preedit : Gtk.Window {
+
+ public IBus.Text get_commit_text() {
+ string extension_text = m_extension_preedit_emoji.get_text();
+- if (extension_text.length == 0)
++ if (extension_text.length == 0 && m_prefix != "u")
+ extension_text = m_extension_preedit_text.get_text();
+ return new IBus.Text.from_string(extension_text);
+ }
+@@ -556,8 +556,10 @@ class PanelBinding : IBus.PanelService {
+
+ private bool key_press_keyval(uint keyval) {
+ unichar ch = IBus.keyval_to_unicode(keyval);
++ if (m_extension_name == "unicode" && !ch.isxdigit())
++ return false;
+ if (ch.iscntrl())
+- return false;
++ return false;
+ string str = ch.to_string();
+ m_preedit.append_text(str);
+ string annotation = m_preedit.get_text();
+--
+2.24.1
+
+From 3aa670e9f8319fe064ce7c45ce56304ca5af94dc Mon Sep 17 00:00:00 2001
+From: fujiwarat <takao.fujiwara1@gmail.com>
+Date: Wed, 9 Sep 2020 18:42:10 +0900
+Subject: [PATCH] engine: Fix to pull the correct language with no iso639
+ variants
+
+Some variants have iso639 but others do not in evdev.xml and
+gensimple.py have to fallback to the layout iso639.
+
+BUG=rhbz#1876877
+---
+ engine/gensimple.py | 19 +++++++++++++++++--
+ 1 file changed, 17 insertions(+), 2 deletions(-)
+
+diff --git a/engine/gensimple.py b/engine/gensimple.py
+index 18f7dc8c..de6d7ff5 100755
+--- a/engine/gensimple.py
++++ b/engine/gensimple.py
+@@ -90,6 +90,7 @@ class EvdevXML(XMLFilterBase):
+ self.__description = ''
+ self.__variant = ''
+ self.__list_iso639 = []
++ self.__list_iso639_for_variant = []
+ def startDocument(self):
+ if self.__downstream:
+ self.__downstream.startDocument()
+@@ -106,7 +107,10 @@ class EvdevXML(XMLFilterBase):
+ elif name == 'configItem':
+ self.__is_config_item = True
+ elif name == 'languageList':
+- self.__list_iso639 = []
++ if self.__is_variant and self.__is_config_item:
++ self.__list_iso639_for_variant = []
++ elif self.__is_layout and self.__is_config_item:
++ self.__list_iso639 = []
+ elif name == 'iso639Id':
+ self.__is_iso639 = True
+ elif name == 'variant':
+@@ -129,6 +133,7 @@ class EvdevXML(XMLFilterBase):
+ self.__is_iso639 = False
+ elif name == 'variant':
+ self.__is_variant = False
++ self.__list_iso639_for_variant = []
+ elif name == 'name':
+ self.__is_name = False
+ def characters(self, text):
+@@ -140,11 +145,21 @@ class EvdevXML(XMLFilterBase):
+ elif self.__is_layout and self.__is_config_item:
+ self.__layout = text
+ elif self.__is_iso639:
++ if self.__is_variant and self.__is_config_item:
++ self.__list_iso639_for_variant.append(text)
++ elif self.__is_layout and self.__is_config_item:
+ self.__list_iso639.append(text)
+ def save(self):
+ if not self.__downstream:
+ return
+- for iso in self.__list_iso639:
++ list_iso639 = []
++ if self.__is_variant and self.__is_config_item:
++ list_iso639 = self.__list_iso639_for_variant
++ if len(list_iso639) == 0:
++ list_iso639 = self.__list_iso639
++ elif self.__is_layout and self.__is_config_item:
++ list_iso639 = self.__list_iso639
++ for iso in list_iso639:
+ do_deny = False
+ for [xkb, layout, variant, lang] in self.__denylist:
+ if xkb == 'xkb' \
+--
+2.24.1
+
diff --git a/ibus.spec b/ibus.spec
index 53809e6..df0f5e3 100644
--- a/ibus.spec
+++ b/ibus.spec
@@ -26,14 +26,14 @@
Name: ibus
Version: 1.5.22
-Release: 15%{?dist}
+Release: 16%{?dist}
Summary: Intelligent Input Bus for Linux OS
License: LGPLv2+
URL: https://github.com/ibus/%name/wiki
Source0: https://github.com/ibus/%name/releases/download/%{version}/%{name}-%{version}.tar.gz
Source1: %{name}-xinput
Source2: %{name}.conf.5
-Source3: https://fujiwara.fedorapeople.org/ibus/po/%{name}-simple-1.5.22.20200827.xml.gz
+Source3: https://fujiwara.fedorapeople.org/ibus/po/%{name}-simple-1.5.22.20200909.xml.gz
Source4: https://fujiwara.fedorapeople.org/ibus/po/%{name}-po-1.5.22-20200827.tar.gz
# Patch0: %%{name}-HEAD.patch
Patch0: %{name}-HEAD.patch
@@ -461,6 +461,10 @@ dconf update || :
%{_datadir}/installed-tests/ibus
%changelog
+* Wed Sep 09 2020 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.22-16
+- Bug 1876877 - Fix to pull the correct language with no iso639 variants
+- Accept xdigits only for Unicode typing
+
* Thu Aug 27 2020 Takao Fujiwara <tfujiwar@redhat.com> - 1.5.22-15
- Rename simple.xml to simple.xml.in
diff --git a/sources b/sources
index 0468a56..43fee9f 100644
--- a/sources
+++ b/sources
@@ -1,3 +1,3 @@
SHA512 (ibus-1.5.22.tar.gz) = 0abe89acc6da8cea484a6b9f807c08e94869072f374f9e8f4541a426636f818f1c3cb8b9237f97245771f9e4bf19184983d8ac924177dc4824ca6e8b5304425d
-SHA512 (ibus-simple-1.5.22.20200827.xml.gz) = d97a0228507741ddbb06b17690694db900c0d983e00c86bed0537a825d90d951ff1287f3f7e72a706856ecb11c2172070d9eb9168f9e0a4ec28b6783862e742b
+SHA512 (ibus-simple-1.5.22.20200909.xml.gz) = bfa809b70dc55f293b9c766b8dfbb8d75ef66c055a6634d42e8b76df7bbbad241ba6a6ef0c38eb453ac547725b6368aa0ccc3e1bea45cb5f843f255630e919d9
SHA512 (ibus-po-1.5.22-20200827.tar.gz) = 87bcade0166744e186af81747d5f3c38e223a85f6bef859f714a8dc9912789def2bc41c67b78a2743455be3c53df31953ca382f0d23ac115a0a42deea7675de3
^ permalink raw reply related [flat|nested] only message in thread
only message in thread, other threads:[~2026-05-31 2:07 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-05-31 2:07 [rpms/ibus] autotool: Bug 1876877 - Fix to pull the correct language with no iso639 variants Takao Fujiwara
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox