--- addressbook/backends/groupwise/e-book-backend-groupwise.c.orig 2006-05-11 12:21:57.361493158 +0200 +++ addressbook/backends/groupwise/e-book-backend-groupwise.c 2006-05-11 12:15:45.055028496 +0200 @@ -2883,7 +2883,6 @@ update_address_book_deltas (EBookBackend if (cache_last_sequence != server_last_sequence) { - while (cache_last_sequence < server_last_sequence) { if (enable_debug) { printf("cache_last_sequence:%lf, server_last_sequence:%lf\n", cache_last_sequence, server_last_sequence); printf("Calling get_items_delta\n"); @@ -2897,7 +2896,8 @@ update_address_book_deltas (EBookBackend if (add_list == NULL && delete_list == NULL) { if (enable_debug) printf("sequence differs but no changes found !!!\n"); - break; + g_mutex_unlock (priv->update_mutex); + return TRUE; } sync_required = TRUE; if (enable_debug) { @@ -2976,7 +2976,7 @@ update_address_book_deltas (EBookBackend g_object_unref (add_list->data); } cache_last_sequence += contact_num; - } + /* cache is updated, now adding the sequence information to the cache */