aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Toshok <toshok@ximian.com>2002-02-19 08:20:21 +0800
committerChris Toshok <toshok@src.gnome.org>2002-02-19 08:20:21 +0800
commite17651e6354f0519cbf8c74a205b311e99d55748 (patch)
tree796978c078ccce8a3efdd67cbb64b9290683679e
parentd866ac96b14cef65c5d116f5ec4b047025c3be98 (diff)
downloadgsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar.gz
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar.bz2
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar.lz
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar.xz
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.tar.zst
gsoc2013-evolution-e17651e6354f0519cbf8c74a205b311e99d55748.zip
if the load_uri fails, notify the listener that the repository is offline.
2002-02-18 Chris Toshok <toshok@ximian.com> * backend/pas/pas-book-factory.c (pas_book_factory_process_request): if the load_uri fails, notify the listener that the repository is offline. (partial fix for bug 20347) svn path=/trunk/; revision=15758
-rw-r--r--addressbook/ChangeLog7
-rw-r--r--addressbook/backend/pas/pas-book-factory.c18
2 files changed, 24 insertions, 1 deletions
diff --git a/addressbook/ChangeLog b/addressbook/ChangeLog
index 9bb07ebb63..cade85649a 100644
--- a/addressbook/ChangeLog
+++ b/addressbook/ChangeLog
@@ -1,5 +1,12 @@
2002-02-18 Chris Toshok <toshok@ximian.com>
+ * backend/pas/pas-book-factory.c
+ (pas_book_factory_process_request): if the load_uri fails, notify
+ the listener that the repository is offline. (partial fix for bug
+ 20347)
+
+2002-02-18 Chris Toshok <toshok@ximian.com>
+
* backend/pas/pas-backend-ldap.c (create_dn_from_ecard): escape
commas in the dn, since they're used by ldap to specify the node's
placement in the tree. (fixes bug 20089)
diff --git a/addressbook/backend/pas/pas-book-factory.c b/addressbook/backend/pas/pas-book-factory.c
index 76e73ceca0..43bb69a35c 100644
--- a/addressbook/backend/pas/pas-book-factory.c
+++ b/addressbook/backend/pas/pas-book-factory.c
@@ -282,8 +282,24 @@ pas_book_factory_process_request (PASBookFactory *factory,
if (!backend)
goto out;
- if (!pas_backend_load_uri (backend, uri))
+ if (!pas_backend_load_uri (backend, uri) ) {
+ /* tell the listener that we failed to open the book */
+ CORBA_exception_init (&ev);
+
+ GNOME_Evolution_Addressbook_BookListener_notifyBookOpened (
+ listener, GNOME_Evolution_Addressbook_BookListener_RepositoryOffline,
+ CORBA_OBJECT_NIL,
+ &ev);
+
+ if (ev._major != CORBA_NO_EXCEPTION) {
+ g_warning ("pas_book_respond_open: Exception "
+ "responding to BookListener!\n");
+ }
+
+ CORBA_exception_free (&ev);
+
goto out;
+ }
pas_backend_add_client (backend, listener);