tolerate NULL book views.
authorMichael Meeks <michael@ximian.com>
Mon, 9 Feb 2004 20:35:22 +0000 (20:35 +0000)
committerMichael Meeks <michael@src.gnome.org>
Mon, 9 Feb 2004 20:35:22 +0000 (20:35 +0000)
2004-02-09  Michael Meeks  <michael@ximian.com>

* libedata-book/e-data-book.c (view_destroy): tolerate NULL
book views.

2004-02-09  Michael Meeks  <michael@ximian.com>

* libedataserver/e-list-iterator.c (e_list_iterator_new),
* libedataserver/e-list.c (e_list_get_iterator):
add preconditions for NULL list.

ChangeLog
addressbook/ChangeLog
addressbook/libedata-book/e-data-book.c
libedataserver/e-list-iterator.c
libedataserver/e-list.c

index 7a3ff18..e9cffe4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2004-02-09  Michael Meeks  <michael@ximian.com>
+
+       * libedataserver/e-list-iterator.c (e_list_iterator_new),
+       * libedataserver/e-list.c (e_list_get_iterator):
+       add preconditions for NULL list.
+
 2004-02-09  JP Rosevear  <jpr@ximian.com>
 
        * configure.in: Bump version, libtool numbers
index 832bcba..8867013 100644 (file)
@@ -1,3 +1,8 @@
+2004-02-09  Michael Meeks  <michael@ximian.com>
+
+       * libedata-book/e-data-book.c (view_destroy): tolerate NULL
+       book views.
+
 2004-02-08  Chris Toshok  <toshok@ximian.com>
 
        * tests/ebook/Makefile.am (noinst_PROGRAMS): build
index 1114d48..0850bf0 100644 (file)
@@ -478,6 +478,9 @@ view_destroy(gpointer data, GObject *where_object_was)
        gboolean success = FALSE;
        EList *views = e_book_backend_get_book_views (book->priv->backend);
 
+       if (!views)
+               return;
+
        for (iterator = e_list_get_iterator(views);
             e_iterator_is_valid(iterator);
             e_iterator_next(iterator)) {
index a99492d..429c421 100644 (file)
@@ -105,8 +105,11 @@ e_list_iterator_init (EListIterator *list)
 EIterator *
 e_list_iterator_new (EList *list)
 {
-       EListIterator *iterator = g_object_new (E_TYPE_LIST_ITERATOR, NULL);
+       EListIterator *iterator;
 
+       g_return_val_if_fail (list != NULL, NULL);
+
+       iterator = g_object_new (E_TYPE_LIST_ITERATOR, NULL);
        iterator->list = list;
        g_object_ref(list);
        iterator->iterator = list->list;
index 39cb899..0a39b6d 100644 (file)
@@ -109,7 +109,9 @@ e_list_duplicate (EList *old)
 EIterator *
 e_list_get_iterator (EList *list)
 {
-       EIterator *iterator = e_list_iterator_new(list);
+       EIterator *iterator;
+       g_return_val_if_fail (list != NULL, NULL);
+       iterator = e_list_iterator_new(list);
        list->iterators = g_list_append(list->iterators, iterator);
        return iterator;
 }