diff options
3 files changed, 147 insertions, 0 deletions
diff --git a/meta-gnome/recipes-support/ibus/ibus.inc b/meta-gnome/recipes-support/ibus/ibus.inc index 9d0600c794..9dce2ce4f3 100644 --- a/meta-gnome/recipes-support/ibus/ibus.inc +++ b/meta-gnome/recipes-support/ibus/ibus.inc | |||
@@ -13,6 +13,8 @@ SRC_URI = " \ | |||
13 | git://github.com/ibus/ibus.git;branch=main;protocol=https \ | 13 | git://github.com/ibus/ibus.git;branch=main;protocol=https \ |
14 | file://0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch \ | 14 | file://0001-Do-not-try-to-start-dbus-we-do-not-have-dbus-lauch.patch \ |
15 | file://0001-makefile-don-t-gzip-the-man-pages.patch \ | 15 | file://0001-makefile-don-t-gzip-the-man-pages.patch \ |
16 | file://0002-util-IMdkit-Fix-incompatible-pointer-types-in-Transp.patch \ | ||
17 | file://0001-src-Fix-declaration-errors-with-GCC-15.patch \ | ||
16 | " | 18 | " |
17 | SRCREV = "6a70ab0338206bd1c7d01a4e1874ea0ee5b3a9d3" | 19 | SRCREV = "6a70ab0338206bd1c7d01a4e1874ea0ee5b3a9d3" |
18 | S = "${WORKDIR}/git" | 20 | S = "${WORKDIR}/git" |
diff --git a/meta-gnome/recipes-support/ibus/ibus/0001-src-Fix-declaration-errors-with-GCC-15.patch b/meta-gnome/recipes-support/ibus/ibus/0001-src-Fix-declaration-errors-with-GCC-15.patch new file mode 100644 index 0000000000..150ff631ba --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus/0001-src-Fix-declaration-errors-with-GCC-15.patch | |||
@@ -0,0 +1,36 @@ | |||
1 | From 0f5407f8a3846477fcaa73505437e805467901e1 Mon Sep 17 00:00:00 2001 | ||
2 | From: fujiwarat <takao.fujiwara1@gmail.com> | ||
3 | Date: Fri, 24 Jan 2025 09:40:31 +0900 | ||
4 | Subject: [PATCH] src: Fix declaration errors with GCC 15 | ||
5 | |||
6 | |||
7 | BUG=rhbz#2340629 | ||
8 | |||
9 | Upstream-Status: Backport [https://github.com/ibus/ibus/commit/aac5446e8c98db934912b9b15a1ef92c3b7e4c8c] | ||
10 | Signed-off-by: Yoann Congal <yoann.congal@smile.fr> | ||
11 | --- | ||
12 | src/ibusenginesimple.c | 4 ++-- | ||
13 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
14 | |||
15 | diff --git a/src/ibusenginesimple.c b/src/ibusenginesimple.c | ||
16 | index c57a3ea5..60e7fb34 100644 | ||
17 | --- a/src/ibusenginesimple.c | ||
18 | +++ b/src/ibusenginesimple.c | ||
19 | @@ -477,7 +477,7 @@ check_hex (IBusEngineSimple *simple, | ||
20 | } | ||
21 | |||
22 | static IBusEngineDict * | ||
23 | -load_emoji_dict () | ||
24 | +load_emoji_dict (void) | ||
25 | { | ||
26 | IBusEngineDict *emoji_dict; | ||
27 | GList *keys; | ||
28 | @@ -520,7 +520,7 @@ check_emoji_table (IBusEngineSimple *simple, | ||
29 | g_object_ref_sink (priv->lookup_table); | ||
30 | } | ||
31 | if (emoji_dict == NULL) | ||
32 | - emoji_dict = priv->emoji_dict = load_emoji_dict (simple); | ||
33 | + emoji_dict = priv->emoji_dict = load_emoji_dict (); | ||
34 | |||
35 | if (emoji_dict == NULL || emoji_dict->dict == NULL) | ||
36 | return FALSE; | ||
diff --git a/meta-gnome/recipes-support/ibus/ibus/0002-util-IMdkit-Fix-incompatible-pointer-types-in-Transp.patch b/meta-gnome/recipes-support/ibus/ibus/0002-util-IMdkit-Fix-incompatible-pointer-types-in-Transp.patch new file mode 100644 index 0000000000..229a9d34aa --- /dev/null +++ b/meta-gnome/recipes-support/ibus/ibus/0002-util-IMdkit-Fix-incompatible-pointer-types-in-Transp.patch | |||
@@ -0,0 +1,109 @@ | |||
1 | From b0a554d7c9d4d52bd34a85fe66a85adf9542a2ec Mon Sep 17 00:00:00 2001 | ||
2 | From: fujiwarat <takao.fujiwara1@gmail.com> | ||
3 | Date: Fri, 24 Jan 2025 10:01:11 +0900 | ||
4 | Subject: [PATCH] util/IMdkit: Fix incompatible-pointer-types in | ||
5 | TransportSW.checkAddr | ||
6 | |||
7 | |||
8 | BUG=rhbz#2340629 | ||
9 | |||
10 | Upstream-Status: Backport [https://github.com/ibus/ibus/commit/d039b95b1af14fd34167a4ca038938cef2ea41ca] | ||
11 | Signed-off-by: Yoann Congal <yoann.congal@smile.fr> | ||
12 | --- | ||
13 | util/IMdkit/Xi18n.h | 18 ++++++++++-------- | ||
14 | util/IMdkit/i18nMethod.c | 3 ++- | ||
15 | util/IMdkit/i18nOffsetCache.c | 10 ++++++---- | ||
16 | 3 files changed, 18 insertions(+), 13 deletions(-) | ||
17 | |||
18 | diff --git a/util/IMdkit/Xi18n.h b/util/IMdkit/Xi18n.h | ||
19 | index 79dd9619..09097bb6 100644 | ||
20 | --- a/util/IMdkit/Xi18n.h | ||
21 | +++ b/util/IMdkit/Xi18n.h | ||
22 | @@ -3,7 +3,7 @@ | ||
23 | Copyright (C) 1994-1995 Sun Microsystems, Inc. | ||
24 | Copyright (C) 1993-1994 Hewlett-Packard Company | ||
25 | Copyright (C) 2014 Peng Huang <shawn.p.huang@gmail.com> | ||
26 | - Copyright (C) 2014 Red Hat, Inc. | ||
27 | + Copyright (C) 2014-2025 Red Hat, Inc. | ||
28 | |||
29 | Permission to use, copy, modify, distribute, and sell this software | ||
30 | and its documentation for any purpose is hereby granted without fee, | ||
31 | @@ -71,13 +71,6 @@ IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. | ||
32 | #define I18N_SET 1 | ||
33 | #define I18N_GET 2 | ||
34 | |||
35 | -typedef struct | ||
36 | -{ | ||
37 | - char *transportname; | ||
38 | - int namelen; | ||
39 | - Bool (*checkAddr) (); | ||
40 | -} TransportSW; | ||
41 | - | ||
42 | typedef struct _XIMPending | ||
43 | { | ||
44 | unsigned char *p; | ||
45 | @@ -172,6 +165,15 @@ typedef struct _Xi18nClient | ||
46 | |||
47 | typedef struct _Xi18nCore *Xi18n; | ||
48 | |||
49 | +typedef struct _TransportSW TransportSW; | ||
50 | + | ||
51 | +struct _TransportSW | ||
52 | +{ | ||
53 | + char *transportname; | ||
54 | + int namelen; | ||
55 | + Bool (*checkAddr) (Xi18n, TransportSW *, char *); | ||
56 | +}; | ||
57 | + | ||
58 | /* | ||
59 | * Callback Struct for XIM Protocol | ||
60 | */ | ||
61 | diff --git a/util/IMdkit/i18nMethod.c b/util/IMdkit/i18nMethod.c | ||
62 | index 9c44e7fe..7f343d87 100644 | ||
63 | --- a/util/IMdkit/i18nMethod.c | ||
64 | +++ b/util/IMdkit/i18nMethod.c | ||
65 | @@ -2,6 +2,7 @@ | ||
66 | |||
67 | Copyright 1994, 1995 by Sun Microsystems, Inc. | ||
68 | Copyright 1993, 1994 by Hewlett-Packard Company | ||
69 | + Copyright (C) 2014-2025 Red Hat, Inc. | ||
70 | |||
71 | Permission to use, copy, modify, distribute, and sell this software | ||
72 | and its documentation for any purpose is hereby granted without fee, | ||
73 | @@ -89,7 +90,7 @@ TransportSW _TransR[] = | ||
74 | #ifdef DNETCONN | ||
75 | {"decnet", 6, _Xi18nCheckTransAddress}, | ||
76 | #endif | ||
77 | - {(char *) NULL, 0, (Bool (*) ()) NULL} | ||
78 | + {(char *) NULL, 0, (Bool (*) (Xi18n, TransportSW *, char *))NULL} | ||
79 | }; | ||
80 | |||
81 | static Bool GetInputStyles (Xi18n i18n_core, XIMStyles **p_style) | ||
82 | diff --git a/util/IMdkit/i18nOffsetCache.c b/util/IMdkit/i18nOffsetCache.c | ||
83 | index e2fe8c6b..cab974c7 100644 | ||
84 | --- a/util/IMdkit/i18nOffsetCache.c | ||
85 | +++ b/util/IMdkit/i18nOffsetCache.c | ||
86 | @@ -1,6 +1,6 @@ | ||
87 | /* | ||
88 | * Copyright (C) 2014 Peng Huang <shawn.p.huang@gmail.com> | ||
89 | - * Copyright (C) 2014 Red Hat, Inc. | ||
90 | + * Copyright (C) 2014-2025 Red Hat, Inc. | ||
91 | * | ||
92 | * Permission to use, copy, modify, distribute, and sell this | ||
93 | * software and its documentation for any purpose is hereby granted | ||
94 | @@ -83,10 +83,12 @@ void _Xi18nSetPropertyOffset (Xi18nOffsetCache *offset_cache, Atom key, | ||
95 | } | ||
96 | |||
97 | if (++offset_cache->size > offset_cache->capacity) { | ||
98 | - offset_cache->capacity *= OFFSET_CACHE_GROWTH_FACTOR; | ||
99 | - offset_cache->data = (Xi18nAtomOffsetPair *) realloc (data, | ||
100 | + Xi18nAtomOffsetPair *pair = (Xi18nAtomOffsetPair *) realloc (data, | ||
101 | offset_cache->capacity * sizeof (Xi18nAtomOffsetPair)); | ||
102 | - if (offset_cache->data == NULL) { | ||
103 | + offset_cache->capacity *= OFFSET_CACHE_GROWTH_FACTOR; | ||
104 | + if (pair) { | ||
105 | + offset_cache->data = pair; | ||
106 | + } else { | ||
107 | offset_cache->data = data; | ||
108 | --offset_cache->size; | ||
109 | } | ||