Gentoo Archives: gentoo-commits

From: Joonas Niilola <juippis@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-libs/libappindicator/files/, dev-libs/libappindicator/
Date: Sun, 01 Nov 2020 06:14:12
Message-Id: 1604211234.77ff0c5e421f1ff1a4eab09ebf2c666172358a85.juippis@gentoo
1 commit: 77ff0c5e421f1ff1a4eab09ebf2c666172358a85
2 Author: Henry Chan <29583860+enlich <AT> users <DOT> noreply <DOT> github <DOT> com>
3 AuthorDate: Sat Oct 31 12:02:45 2020 +0000
4 Commit: Joonas Niilola <juippis <AT> gentoo <DOT> org>
5 CommitDate: Sun Nov 1 06:13:54 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=77ff0c5e
7
8 dev-libs/libappindicator: fix segfault in app_indicator_set_icon_full
9
10 Applies the two patches from paulieg and sersorrel attached to
11 https://bugs.launchpad.net/archlinux/+source/libappindicator/+bug/1867996
12
13 Signed-off-by: Henry Chan <29583860+enlich <AT> users.noreply.github.com>
14 Package-Manager: Portage-2.3.103, Repoman-2.3.23
15 Closes: https://github.com/gentoo/gentoo/pull/18090
16 Signed-off-by: Joonas Niilola <juippis <AT> gentoo.org>
17
18 ...cator-12.10.0-lp1867996-fix-g-signal-emit.patch | 74 ++++++++++++++++++++++
19 ...12.10.0-lp1867996-fix-iterate-search-path.patch | 11 ++++
20 .../libappindicator-12.10.0-r301.ebuild | 3 +
21 3 files changed, 88 insertions(+)
22
23 diff --git a/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-g-signal-emit.patch b/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-g-signal-emit.patch
24 new file mode 100644
25 index 00000000000..bea1274ed24
26 --- /dev/null
27 +++ b/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-g-signal-emit.patch
28 @@ -0,0 +1,74 @@
29 +--- a/src/app-indicator.c 2012-07-11 13:28:34.415113869 -0400
30 ++++ b/src/app-indicator.c 2020-03-19 12:14:47.813191652 -0400
31 +@@ -443,7 +443,7 @@
32 + G_STRUCT_OFFSET (AppIndicatorClass, new_icon),
33 + NULL, NULL,
34 + g_cclosure_marshal_VOID__VOID,
35 +- G_TYPE_NONE, 0, G_TYPE_NONE);
36 ++ G_TYPE_NONE, 0);
37 +
38 + /**
39 + * AppIndicator::new-attention-icon:
40 +@@ -457,7 +457,7 @@
41 + G_STRUCT_OFFSET (AppIndicatorClass, new_attention_icon),
42 + NULL, NULL,
43 + g_cclosure_marshal_VOID__VOID,
44 +- G_TYPE_NONE, 0, G_TYPE_NONE);
45 ++ G_TYPE_NONE, 0);
46 +
47 + /**
48 + * AppIndicator::new-status:
49 +@@ -505,7 +505,7 @@
50 + G_STRUCT_OFFSET (AppIndicatorClass, connection_changed),
51 + NULL, NULL,
52 + g_cclosure_marshal_VOID__BOOLEAN,
53 +- G_TYPE_NONE, 1, G_TYPE_BOOLEAN, G_TYPE_NONE);
54 ++ G_TYPE_NONE, 1, G_TYPE_BOOLEAN);
55 +
56 + /**
57 + * AppIndicator::new-icon-theme-path:
58 +@@ -1175,7 +1175,7 @@
59 + gchar * guide = priv->label_guide != NULL ? priv->label_guide : "";
60 +
61 + g_signal_emit(G_OBJECT(self), signals[NEW_LABEL], 0,
62 +- label, guide, TRUE);
63 ++ label, guide);
64 + if (priv->dbus_registration != 0 && priv->connection != NULL) {
65 + GError * error = NULL;
66 +
67 +@@ -1490,7 +1490,7 @@
68 + static void
69 + theme_changed_cb (GtkIconTheme * theme, gpointer user_data)
70 + {
71 +- g_signal_emit (user_data, signals[NEW_ICON], 0, TRUE);
72 ++ g_signal_emit (user_data, signals[NEW_ICON], 0);
73 +
74 + AppIndicator * self = (AppIndicator *)user_data;
75 + AppIndicatorPrivate *priv = self->priv;
76 +@@ -1904,7 +1904,7 @@
77 + }
78 +
79 + if (changed) {
80 +- g_signal_emit (self, signals[NEW_ATTENTION_ICON], 0, TRUE);
81 ++ g_signal_emit (self, signals[NEW_ATTENTION_ICON], 0);
82 +
83 + if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
84 + GError * error = NULL;
85 +@@ -1982,7 +1982,7 @@
86 + }
87 +
88 + if (changed) {
89 +- g_signal_emit (self, signals[NEW_ICON], 0, TRUE);
90 ++ g_signal_emit (self, signals[NEW_ICON], 0);
91 +
92 + if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
93 + GError * error = NULL;
94 +@@ -2048,7 +2048,7 @@
95 +
96 + self->priv->icon_theme_path = g_strdup(icon_theme_path);
97 +
98 +- g_signal_emit (self, signals[NEW_ICON_THEME_PATH], 0, self->priv->icon_theme_path, TRUE);
99 ++ g_signal_emit (self, signals[NEW_ICON_THEME_PATH], 0, self->priv->icon_theme_path);
100 +
101 + if (self->priv->dbus_registration != 0 && self->priv->connection != NULL) {
102 + GError * error = NULL;
103
104 diff --git a/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-iterate-search-path.patch b/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-iterate-search-path.patch
105 new file mode 100644
106 index 00000000000..34471fbfa26
107 --- /dev/null
108 +++ b/dev-libs/libappindicator/files/libappindicator-12.10.0-lp1867996-fix-iterate-search-path.patch
109 @@ -0,0 +1,11 @@
110 +--- a/src/app-indicator.c 2020-10-31 03:31:51.966830232 -0700
111 ++++ b/src/app-indicator.c 2020-10-31 03:36:04.252822972 -0700
112 +@@ -1606,7 +1606,7 @@ status_icon_changes (AppIndicator * self
113 + gint n_elements, i;
114 + gboolean found=FALSE;
115 + gtk_icon_theme_get_search_path(icon_theme, &path, &n_elements);
116 +- for (i=0; i< n_elements || path[i] == NULL; i++) {
117 ++ for (i=0; i< n_elements; i++) {
118 + if(g_strcmp0(path[i], self->priv->icon_theme_path) == 0) {
119 + found=TRUE;
120 + break;
121
122 diff --git a/dev-libs/libappindicator/libappindicator-12.10.0-r301.ebuild b/dev-libs/libappindicator/libappindicator-12.10.0-r301.ebuild
123 index 0a3bd6b4073..53469023131 100644
124 --- a/dev-libs/libappindicator/libappindicator-12.10.0-r301.ebuild
125 +++ b/dev-libs/libappindicator/libappindicator-12.10.0-r301.ebuild
126 @@ -33,6 +33,9 @@ PATCHES=(
127 "${FILESDIR}"/${P}-conditional-py-bindings.patch
128 # http://bazaar.launchpad.net/~indicator-applet-developers/libappindicator/trunk.12.10/revision/244
129 "${FILESDIR}"/${P}-vala-inherit.patch
130 + # https://bugs.launchpad.net/archlinux/+source/libappindicator/+bug/1867996
131 + "${FILESDIR}"/${P}-lp1867996-fix-g-signal-emit.patch
132 + "${FILESDIR}"/${P}-lp1867996-fix-iterate-search-path.patch
133 )
134
135 src_prepare() {