File bnc-169997-eds-infinite-loop.diff of Package evolution-data-server

--- 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 */
 
openSUSE Build Service is sponsored by