Add patch gor GNOME bug #693101 (IMAPx vanishes folder summary)

Add patch for Red Hat bug #912503 (incorrect G_BEGIN/END_DECLS)
This commit is contained in:
Milan Crha 2013-02-21 10:55:18 +01:00
parent 0fb4032173
commit 1a5dcf9f1d
3 changed files with 156 additions and 1 deletions

View File

@ -0,0 +1,79 @@
diff -up evolution-data-server-3.7.90/addressbook/libebook/e-book-types.h.decls evolution-data-server-3.7.90/addressbook/libebook/e-book-types.h
--- evolution-data-server-3.7.90/addressbook/libebook/e-book-types.h.decls 2013-02-21 10:46:34.750149942 +0100
+++ evolution-data-server-3.7.90/addressbook/libebook/e-book-types.h 2013-02-21 10:47:00.399424482 +0100
@@ -56,5 +56,6 @@ typedef enum {
#define E_BOOK_ERROR_CORBA_EXCEPTION E_BOOK_ERROR_DBUS_EXCEPTION
#endif
+G_END_DECLS
#endif /* __E_BOOK_TYPES_H__ */
diff -up evolution-data-server-3.7.90/camel/camel-db.h.decls evolution-data-server-3.7.90/camel/camel-db.h
--- evolution-data-server-3.7.90/camel/camel-db.h.decls 2013-02-21 10:44:29.371807602 +0100
+++ evolution-data-server-3.7.90/camel/camel-db.h 2013-02-21 10:44:41.492935929 +0100
@@ -10,6 +10,8 @@
#include <sqlite3.h>
#include <glib.h>
+G_BEGIN_DECLS
+
/**
* CAMEL_DB_FILE:
*
@@ -320,4 +322,6 @@ gint camel_db_write_preview_record (Came
gint
camel_db_reset_folder_version (CamelDB *cdb, const gchar *folder_name, gint reset_version, GError **error);
+G_END_DECLS
+
#endif
diff -up evolution-data-server-3.7.90/camel/camel-imapx-conn-manager.h.decls evolution-data-server-3.7.90/camel/camel-imapx-conn-manager.h
--- evolution-data-server-3.7.90/camel/camel-imapx-conn-manager.h.decls 2013-02-21 10:44:16.892675726 +0100
+++ evolution-data-server-3.7.90/camel/camel-imapx-conn-manager.h 2013-02-21 10:44:41.493935909 +0100
@@ -28,6 +28,8 @@
#include "camel-imapx-server.h"
+G_BEGIN_DECLS
+
/* Standard GObject macros */
#define CAMEL_TYPE_IMAPX_CONN_MANAGER \
(camel_imapx_conn_manager_get_type ())
@@ -80,4 +82,6 @@ void camel_imapx_conn_manager_update_co
CamelIMAPXServer *server,
const gchar *folder_name);
+G_END_DECLS
+
#endif /* _CAMEL_IMAPX_SERVER_H */
diff -up evolution-data-server-3.7.90/camel/camel-imapx-search.h.decls evolution-data-server-3.7.90/camel/camel-imapx-search.h
--- evolution-data-server-3.7.90/camel/camel-imapx-search.h.decls 2013-02-21 10:46:52.966345012 +0100
+++ evolution-data-server-3.7.90/camel/camel-imapx-search.h 2013-02-21 10:47:24.063681666 +0100
@@ -76,5 +76,7 @@ CamelIMAPXServer *
void camel_imapx_search_set_server (CamelIMAPXSearch *search,
CamelIMAPXServer *server);
+G_END_DECLS
+
#endif /* CAMEL_IMAPX_SEARCH_H */
diff -up evolution-data-server-3.7.90/camel/camel-imapx-utils.h.decls evolution-data-server-3.7.90/camel/camel-imapx-utils.h
--- evolution-data-server-3.7.90/camel/camel-imapx-utils.h.decls 2013-02-21 10:44:04.866548837 +0100
+++ evolution-data-server-3.7.90/camel/camel-imapx-utils.h 2013-02-21 10:44:41.493935909 +0100
@@ -26,6 +26,8 @@
#include <camel/camel-store.h>
+G_BEGIN_DECLS
+
struct _CamelIMAPXStream;
struct _CamelFlag;
struct _CamelIMAPXNamespaceList;
@@ -398,5 +400,7 @@ struct _CamelIMAPXNamespaceList *
struct _CamelIMAPXNamespaceList *
camel_imapx_namespace_list_copy (const struct _CamelIMAPXNamespaceList *nsl);
+G_END_DECLS
+
#endif /* CAMEL_IMAPX_UTILS_H */

View File

@ -0,0 +1,68 @@
diff --git a/camel/camel-imapx-command.c b/camel/camel-imapx-command.c
index de1de70..e1ebf00 100644
--- a/camel/camel-imapx-command.c
+++ b/camel/camel-imapx-command.c
@@ -581,6 +581,8 @@ gboolean
camel_imapx_command_set_error_if_failed (CamelIMAPXCommand *ic,
GError **error)
{
+ CamelIMAPXJob *job;
+
g_return_val_if_fail (CAMEL_IS_IMAPX_COMMAND (ic), FALSE);
if (ic->status != NULL && ic->status->result != IMAPX_OK) {
@@ -595,6 +597,10 @@ camel_imapx_command_set_error_if_failed (CamelIMAPXCommand *ic,
return TRUE;
}
+ job = camel_imapx_command_get_job (ic);
+ if (job && g_cancellable_set_error_if_cancelled (camel_imapx_job_get_cancellable (job), error))
+ return TRUE;
+
return FALSE;
}
diff --git a/camel/camel-imapx-job.c b/camel/camel-imapx-job.c
index 244afcd..a91e0ae 100644
--- a/camel/camel-imapx-job.c
+++ b/camel/camel-imapx-job.c
@@ -337,3 +337,14 @@ camel_imapx_job_set_folder (CamelIMAPXJob *job,
g_mutex_unlock (&real_job->folder_lock);
}
+GCancellable *
+camel_imapx_job_get_cancellable (CamelIMAPXJob *job)
+{
+ CamelIMAPXRealJob *real_job;
+
+ g_return_val_if_fail (CAMEL_IS_IMAPX_JOB (job), NULL);
+
+ real_job = (CamelIMAPXRealJob *) job;
+
+ return real_job->cancellable;
+}
diff --git a/camel/camel-imapx-job.h b/camel/camel-imapx-job.h
index 9b12fdb..a6fbec8 100644
--- a/camel/camel-imapx-job.h
+++ b/camel/camel-imapx-job.h
@@ -80,6 +80,7 @@ gboolean camel_imapx_job_has_folder (CamelIMAPXJob *job,
CamelFolder * camel_imapx_job_ref_folder (CamelIMAPXJob *job);
void camel_imapx_job_set_folder (CamelIMAPXJob *job,
CamelFolder *folder);
+GCancellable * camel_imapx_job_get_cancellable (CamelIMAPXJob *job);
G_END_DECLS
diff --git a/camel/camel-imapx-server.c b/camel/camel-imapx-server.c
index 33d5618..099f689 100644
--- a/camel/camel-imapx-server.c
+++ b/camel/camel-imapx-server.c
@@ -6683,7 +6682,7 @@ cancel_all_jobs (CamelIMAPXServer *is,
/* Send a NULL GError since we already cancelled
* the job and we're not interested in individual
* command errors. */
- ic->complete (is, ic, NULL, NULL);
+ ic->complete (is, ic, camel_imapx_job_get_cancellable (job), NULL);
}
camel_imapx_command_queue_free (queue);

View File

@ -27,7 +27,7 @@
Name: evolution-data-server
Version: 3.7.90
Release: 2%{?dist}
Release: 3%{?dist}
Group: System Environment/Libraries
Summary: Backend data server for Evolution
License: LGPLv2+
@ -44,6 +44,8 @@ Obsoletes: evolution-webcal < 2.24.0
Patch01: evolution-data-server-1.11.5-fix-64bit-acinclude.patch
Patch02: evolution-data-server-3.7.90-pc-files-fix.patch
Patch03: evolution-data-server-3.7.90-imapx.patch
Patch04: evolution-data-server-3.7.90-decls.patch
### Build Dependencies ###
@ -121,6 +123,8 @@ This package contains developer documentation for %{name}.
%patch01 -p1 -b .fix-64bit-acinclude
%patch02 -p1 -b .pc-files-fix
%patch03 -p1 -b .imapx
%patch04 -p1 -b .decls
mkdir -p krb5-fakeprefix/include
mkdir -p krb5-fakeprefix/lib
@ -368,6 +372,10 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &>/dev/null || :
%{_datadir}/gtk-doc/html/libedataserver
%changelog
* Thu Feb 21 2013 Milan Crha <mcrha@redhat.com> - 3.7.90-3
- Add patch gor GNOME bug #693101 (IMAPx vanishes folder summary)
- Add patch for Red Hat bug #912503 (incorrect G_BEGIN/END_DECLS)
* Mon Feb 18 2013 Milan Crha <mcrha@redhat.com> - 3.7.90-2
- Add an upstream .pc files fix for a libebook split