[evolution-mapi] Bug #601212 - eds crashes when try to delete mapi GAL
- From: Milan Crha <mcrha src gnome org>
- To: svn-commits-list gnome org
- Cc:
- Subject: [evolution-mapi] Bug #601212 - eds crashes when try to delete mapi GAL
- Date: Mon, 9 Nov 2009 13:31:24 +0000 (UTC)
commit c6a0f5ff78ea95246d072f18b61a4636fa78b781
Author: Milan Crha <mcrha redhat com>
Date: Mon Nov 9 14:30:43 2009 +0100
Bug #601212 - eds crashes when try to delete mapi GAL
src/addressbook/e-book-backend-mapi-gal.c | 7 +++++++
src/libexchangemapi/exchange-mapi-connection.c | 2 +-
2 files changed, 8 insertions(+), 1 deletions(-)
---
diff --git a/src/addressbook/e-book-backend-mapi-gal.c b/src/addressbook/e-book-backend-mapi-gal.c
index 948d6bb..94bfb46 100644
--- a/src/addressbook/e-book-backend-mapi-gal.c
+++ b/src/addressbook/e-book-backend-mapi-gal.c
@@ -829,6 +829,12 @@ e_book_backend_mapi_gal_stop_book_view (EBookBackend *backend,
/* FIXME : provide implmentation */
}
+static void
+e_book_backend_mapi_gal_remove (EBookBackend *backend, EDataBook *book, guint32 opid)
+{
+ e_data_book_respond_remove (book, opid, GNOME_Evolution_Addressbook_PermissionDenied);
+}
+
static void e_book_backend_mapi_gal_class_init (EBookBackendMAPIGALClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
@@ -853,6 +859,7 @@ static void e_book_backend_mapi_gal_class_init (EBookBackendMAPIGALClass *klass)
parent_class->get_supported_fields = e_book_backend_mapi_gal_get_supported_fields;
parent_class->get_required_fields = e_book_backend_mapi_gal_get_required_fields;
parent_class->set_mode = e_book_backend_mapi_gal_set_mode;
+ parent_class->remove = e_book_backend_mapi_gal_remove;
object_class->dispose = e_book_backend_mapi_gal_dispose;
diff --git a/src/libexchangemapi/exchange-mapi-connection.c b/src/libexchangemapi/exchange-mapi-connection.c
index a1b57f7..7982750 100644
--- a/src/libexchangemapi/exchange-mapi-connection.c
+++ b/src/libexchangemapi/exchange-mapi-connection.c
@@ -771,7 +771,7 @@ exchange_mapi_util_get_gal (GPtrArray *contacts_array)
do {
count += 0x2;
retval = GetGALTable(global_mapi_session, SPropTagArray, &SRowSet, count, ulFlags);
- if ((!SRowSet) || (!(SRowSet->aRow))) {
+ if ((!SRowSet) || (!(SRowSet->aRow)) || retval != MAPI_E_SUCCESS) {
UNLOCK ();
MAPIFreeBuffer (SPropTagArray);
return FALSE;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]