1 |
tetromino 11/12/31 04:53:23 |
2 |
|
3 |
Added: evolution-data-server-3.2.2-new-folder-imap.patch |
4 |
evolution-data-server-3.2.2-libical-timezones.patch |
5 |
evolution-data-server-3.2.2-gmodule-explicit.patch |
6 |
evolution-data-server-3.2.2-retrieval_done-crash.patch |
7 |
Log: |
8 |
Add upstream patches to fix several bugs, including a crash. Also, fix linking with glib-2.31 (bug #395777, thanks to Oschtan for reporting). |
9 |
|
10 |
(Portage version: 2.2.0_alpha84/cvs/Linux x86_64) |
11 |
|
12 |
Revision Changes Path |
13 |
1.1 gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch |
14 |
|
15 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch?rev=1.1&view=markup |
16 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-new-folder-imap.patch?rev=1.1&content-type=text/plain |
17 |
|
18 |
Index: evolution-data-server-3.2.2-new-folder-imap.patch |
19 |
=================================================================== |
20 |
From 0e421dfb0d9fd1e36a28d8bb47c0ae46ca4925f5 Mon Sep 17 00:00:00 2001 |
21 |
From: Milan Crha <mcrha@××××××.com> |
22 |
Date: Fri, 16 Dec 2011 09:15:03 +0100 |
23 |
Subject: [PATCH] Bug #665253 - "New folder" dialog does not show IMAP |
24 |
accounts |
25 |
|
26 |
--- |
27 |
camel/providers/imap/camel-imap-store.c | 2 +- |
28 |
1 files changed, 1 insertions(+), 1 deletions(-) |
29 |
|
30 |
diff --git a/camel/providers/imap/camel-imap-store.c b/camel/providers/imap/camel-imap-store.c |
31 |
index c46e575..b5ddf93 100644 |
32 |
--- a/camel/providers/imap/camel-imap-store.c |
33 |
+++ b/camel/providers/imap/camel-imap-store.c |
34 |
@@ -1226,7 +1226,7 @@ imap_store_initable_init (GInitable *initable, |
35 |
CAMEL_STORE (service)->flags &= ~CAMEL_STORE_VJUNK; |
36 |
CAMEL_STORE (service)->flags |= CAMEL_STORE_REAL_JUNK_FOLDER; |
37 |
} else { |
38 |
- CAMEL_STORE (service)->flags &= CAMEL_STORE_REAL_JUNK_FOLDER; |
39 |
+ CAMEL_STORE (service)->flags &= ~CAMEL_STORE_REAL_JUNK_FOLDER; |
40 |
CAMEL_STORE (service)->flags |= CAMEL_STORE_VJUNK; |
41 |
} |
42 |
|
43 |
-- |
44 |
1.7.8.1 |
45 |
|
46 |
|
47 |
|
48 |
|
49 |
1.1 gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch |
50 |
|
51 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch?rev=1.1&view=markup |
52 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-libical-timezones.patch?rev=1.1&content-type=text/plain |
53 |
|
54 |
Index: evolution-data-server-3.2.2-libical-timezones.patch |
55 |
=================================================================== |
56 |
From af5d404e57f43e58cac037ad3370e31004347c6e Mon Sep 17 00:00:00 2001 |
57 |
From: Milan Crha <mcrha@××××××.com> |
58 |
Date: Wed, 23 Nov 2011 09:31:01 +0100 |
59 |
Subject: [PATCH] Pre-load all built-in timezones in libical on calendar |
60 |
factory start |
61 |
|
62 |
This is the same fix as was done in evolution within bug #628139 |
63 |
--- |
64 |
calendar/libedata-cal/e-data-cal-factory.c | 27 +++++++++++++++++++++++++-- |
65 |
1 files changed, 25 insertions(+), 2 deletions(-) |
66 |
|
67 |
diff --git a/calendar/libedata-cal/e-data-cal-factory.c b/calendar/libedata-cal/e-data-cal-factory.c |
68 |
index 4413341..df3e136 100644 |
69 |
--- a/calendar/libedata-cal/e-data-cal-factory.c |
70 |
+++ b/calendar/libedata-cal/e-data-cal-factory.c |
71 |
@@ -52,9 +52,7 @@ |
72 |
|
73 |
#include "e-gdbus-cal-factory.h" |
74 |
|
75 |
-#ifdef HAVE_ICAL_UNKNOWN_TOKEN_HANDLING |
76 |
#include <libical/ical.h> |
77 |
-#endif |
78 |
|
79 |
#ifdef G_OS_WIN32 |
80 |
#include <windows.h> |
81 |
@@ -1007,6 +1005,8 @@ main (gint argc, |
82 |
EDataCalFactory *factory; |
83 |
guint owner_id; |
84 |
GError *error = NULL; |
85 |
+ icalarray *builtin_timezones; |
86 |
+ gint ii; |
87 |
|
88 |
#ifdef G_OS_WIN32 |
89 |
/* Reduce risks */ |
90 |
@@ -1057,6 +1057,29 @@ main (gint argc, |
91 |
ical_set_unknown_token_handling_setting (ICAL_DISCARD_TOKEN); |
92 |
#endif |
93 |
|
94 |
+ /* XXX Pre-load all built-in timezones in libical. |
95 |
+ * |
96 |
+ * Built-in time zones in libical 0.43 are loaded on demand, |
97 |
+ * but not in a thread-safe manner, resulting in a race when |
98 |
+ * multiple threads call icaltimezone_load_builtin_timezone() |
99 |
+ * on the same time zone. Until built-in time zone loading |
100 |
+ * in libical is made thread-safe, work around the issue by |
101 |
+ * loading all built-in time zones now, so libical's internal |
102 |
+ * time zone array will be fully populated before any threads |
103 |
+ * are spawned. |
104 |
+ */ |
105 |
+ builtin_timezones = icaltimezone_get_builtin_timezones (); |
106 |
+ for (ii = 0; ii < builtin_timezones->num_elements; ii++) { |
107 |
+ icaltimezone *zone; |
108 |
+ |
109 |
+ zone = icalarray_element_at (builtin_timezones, ii); |
110 |
+ |
111 |
+ /* We don't care about the component right now, |
112 |
+ * we just need some function that will trigger |
113 |
+ * icaltimezone_load_builtin_timezone(). */ |
114 |
+ icaltimezone_get_component (zone); |
115 |
+ } |
116 |
+ |
117 |
factory = g_object_new (E_TYPE_DATA_CAL_FACTORY, NULL); |
118 |
|
119 |
loop = g_main_loop_new (NULL, FALSE); |
120 |
-- |
121 |
1.7.8.1 |
122 |
|
123 |
|
124 |
|
125 |
|
126 |
1.1 gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-gmodule-explicit.patch |
127 |
|
128 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-gmodule-explicit.patch?rev=1.1&view=markup |
129 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-gmodule-explicit.patch?rev=1.1&content-type=text/plain |
130 |
|
131 |
Index: evolution-data-server-3.2.2-gmodule-explicit.patch |
132 |
=================================================================== |
133 |
From 46169b9f411850a6605c34bb1a35dadf27e15dca Mon Sep 17 00:00:00 2001 |
134 |
From: =?UTF-8?q?Diego=20L=C3=B3pez=20Le=C3=B3n?= <dieguitoll@×××××.com> |
135 |
Date: Tue, 29 Nov 2011 19:34:12 -0600 |
136 |
Subject: [PATCH] Bug 664819 - gmodule-2.0 dependency must be explicit |
137 |
|
138 |
--- |
139 |
configure.ac | 7 ++++--- |
140 |
1 files changed, 4 insertions(+), 3 deletions(-) |
141 |
|
142 |
diff --git a/configure.ac b/configure.ac |
143 |
index b325283..b538251 100644 |
144 |
--- a/configure.ac |
145 |
+++ b/configure.ac |
146 |
@@ -334,6 +334,7 @@ dnl Check for base dependencies early. |
147 |
dnl *********************************** |
148 |
PKG_CHECK_MODULES(GNOME_PLATFORM, |
149 |
[gio-2.0 >= glib_minimum_version |
150 |
+ gmodule-2.0 >= glib_minimum_version |
151 |
gtk+-3.0 >= gtk_minimum_version |
152 |
gconf-2.0 >= gconf_minimum_version |
153 |
libxml-2.0 >= libxml_minimum_version |
154 |
@@ -1272,7 +1273,7 @@ PKG_CHECK_MODULES(SQLITE3, [sqlite3 >= sqlite_minimum_version]) |
155 |
dnl ****************************** |
156 |
dnl libedataserver flags |
157 |
dnl ****************************** |
158 |
-E_DATA_SERVER_DEPS="gio-2.0 libxml-2.0 libsoup-2.4 gconf-2.0 $mozilla_nspr" |
159 |
+E_DATA_SERVER_DEPS="gio-2.0 gmodule-2.0 libxml-2.0 libsoup-2.4 gconf-2.0 $mozilla_nspr" |
160 |
|
161 |
EVO_SET_COMPILE_FLAGS(E_DATA_SERVER, $E_DATA_SERVER_DEPS, $MANUAL_NSPR_CFLAGS, $MANUAL_NSPR_LIBS) |
162 |
AC_SUBST(E_DATA_SERVER_CFLAGS) |
163 |
@@ -1294,7 +1295,7 @@ if test "x$enable_maintainer_mode" = "xyes" ; then |
164 |
AC_SUBST(FACTORY_GTK_LIBS) |
165 |
fi |
166 |
|
167 |
-E_BACKEND_DEPS="gio-2.0 libxml-2.0 gconf-2.0" |
168 |
+E_BACKEND_DEPS="gio-2.0 gmodule-2.0 libxml-2.0 gconf-2.0" |
169 |
|
170 |
dnl ****************************** |
171 |
dnl libebackend flags |
172 |
@@ -1437,7 +1438,7 @@ fi |
173 |
|
174 |
AM_CONDITIONAL(ENABLE_LARGEFILE, [test "x$enable_largefile" = "xyes"]) |
175 |
|
176 |
-EVO_SET_COMPILE_FLAGS(CAMEL, gio-2.0 $mozilla_nss sqlite3 >= sqlite_minimum_version, $KRB5_CFLAGS $MANUAL_NSS_CFLAGS $LARGEFILE_CFLAGS, -lz $KRB5_LIBS $MANUAL_NSS_LIBS) |
177 |
+EVO_SET_COMPILE_FLAGS(CAMEL, gio-2.0 gmodule-2.0 $mozilla_nss sqlite3 >= sqlite_minimum_version, $KRB5_CFLAGS $MANUAL_NSS_CFLAGS $LARGEFILE_CFLAGS, -lz $KRB5_LIBS $MANUAL_NSS_LIBS) |
178 |
AC_SUBST(CAMEL_CFLAGS) |
179 |
AC_SUBST(CAMEL_LIBS) |
180 |
|
181 |
-- |
182 |
1.7.8.1 |
183 |
|
184 |
|
185 |
|
186 |
|
187 |
1.1 gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch |
188 |
|
189 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch?rev=1.1&view=markup |
190 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo-x86/gnome-extra/evolution-data-server/files/evolution-data-server-3.2.2-retrieval_done-crash.patch?rev=1.1&content-type=text/plain |
191 |
|
192 |
Index: evolution-data-server-3.2.2-retrieval_done-crash.patch |
193 |
=================================================================== |
194 |
From c1b00584c34b3d6b5784c54256398c4197b23078 Mon Sep 17 00:00:00 2001 |
195 |
From: Milan Crha <mcrha@××××××.com> |
196 |
Date: Wed, 14 Dec 2011 17:37:23 +0100 |
197 |
Subject: [PATCH] Bug #662068 - Crash in e-cal-backend-http.c:retrieval_done |
198 |
|
199 |
--- |
200 |
calendar/backends/http/e-cal-backend-http.c | 19 +++++++++++++++++-- |
201 |
1 files changed, 17 insertions(+), 2 deletions(-) |
202 |
|
203 |
diff --git a/calendar/backends/http/e-cal-backend-http.c b/calendar/backends/http/e-cal-backend-http.c |
204 |
index d40bdd3..c053e3b 100644 |
205 |
--- a/calendar/backends/http/e-cal-backend-http.c |
206 |
+++ b/calendar/backends/http/e-cal-backend-http.c |
207 |
@@ -368,6 +368,12 @@ retrieval_done (SoupSession *session, |
208 |
GHashTable *old_cache; |
209 |
GSList *comps_in_cache; |
210 |
|
211 |
+ if (!msg || msg->status_code == SOUP_STATUS_CANCELLED) { |
212 |
+ /* the backend probably gone in this case, thus just return */ |
213 |
+ g_object_unref (cbhttp); |
214 |
+ return; |
215 |
+ } |
216 |
+ |
217 |
priv = cbhttp->priv; |
218 |
|
219 |
priv->is_loading = FALSE; |
220 |
@@ -376,12 +382,14 @@ retrieval_done (SoupSession *session, |
221 |
if (!priv->uri) { |
222 |
/* uri changed meanwhile, retrieve again */ |
223 |
begin_retrieval_cb (cbhttp); |
224 |
+ g_object_unref (cbhttp); |
225 |
return; |
226 |
} |
227 |
|
228 |
if (msg->status_code == SOUP_STATUS_NOT_MODIFIED) { |
229 |
/* attempts with ETag can result in 304 status code */ |
230 |
priv->opened = TRUE; |
231 |
+ g_object_unref (cbhttp); |
232 |
return; |
233 |
} |
234 |
|
235 |
@@ -399,7 +407,7 @@ retrieval_done (SoupSession *session, |
236 |
uri_parsed = soup_uri_new (priv->uri); |
237 |
soup_uri_set_path (uri_parsed, newuri); |
238 |
soup_uri_set_query (uri_parsed, NULL); |
239 |
- // g_free (newuri); |
240 |
+ /* g_free (newuri); */ |
241 |
|
242 |
newuri = soup_uri_to_string (uri_parsed, FALSE); |
243 |
g_message ("Translated URI: %s\n", newuri); |
244 |
@@ -417,6 +425,7 @@ retrieval_done (SoupSession *session, |
245 |
} |
246 |
} |
247 |
|
248 |
+ g_object_unref (cbhttp); |
249 |
return; |
250 |
} |
251 |
|
252 |
@@ -426,6 +435,7 @@ retrieval_done (SoupSession *session, |
253 |
if (msg->status_code == 401 || msg->status_code == 403) { |
254 |
priv->requires_auth = TRUE; |
255 |
e_cal_backend_notify_auth_required (E_CAL_BACKEND (cbhttp), TRUE, priv->credentials); |
256 |
+ g_object_unref (cbhttp); |
257 |
return; |
258 |
} else |
259 |
e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), |
260 |
@@ -434,6 +444,7 @@ retrieval_done (SoupSession *session, |
261 |
} |
262 |
|
263 |
empty_cache (cbhttp); |
264 |
+ g_object_unref (cbhttp); |
265 |
return; |
266 |
} |
267 |
|
268 |
@@ -453,6 +464,7 @@ retrieval_done (SoupSession *session, |
269 |
if (!priv->opened) |
270 |
e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), _("Bad file format.")); |
271 |
empty_cache (cbhttp); |
272 |
+ g_object_unref (cbhttp); |
273 |
return; |
274 |
} |
275 |
|
276 |
@@ -461,6 +473,7 @@ retrieval_done (SoupSession *session, |
277 |
e_cal_backend_notify_error (E_CAL_BACKEND (cbhttp), _("Not a calendar.")); |
278 |
icalcomponent_free (icalcomp); |
279 |
empty_cache (cbhttp); |
280 |
+ g_object_unref (cbhttp); |
281 |
return; |
282 |
} |
283 |
|
284 |
@@ -543,6 +556,8 @@ retrieval_done (SoupSession *session, |
285 |
|
286 |
priv->opened = TRUE; |
287 |
|
288 |
+ g_object_unref (cbhttp); |
289 |
+ |
290 |
d(g_message ("Retrieval really done.\n")); |
291 |
} |
292 |
|
293 |
@@ -648,7 +663,7 @@ begin_retrieval_cb (ECalBackendHttp *cbhttp) |
294 |
} |
295 |
|
296 |
soup_session_queue_message (priv->soup_session, soup_message, |
297 |
- (SoupSessionCallback) retrieval_done, cbhttp); |
298 |
+ (SoupSessionCallback) retrieval_done, g_object_ref (cbhttp)); |
299 |
|
300 |
d(g_message ("Retrieval started.\n")); |
301 |
return FALSE; |
302 |
-- |
303 |
1.7.8.1 |