[evolution-patches] pls review patch for bug 50583



hi, toshok

Attachment is a patch for bug 50583, which will lead to hang of evolution.

Steps to reproduce:
1.Setup a LDAP contacts(Sun-ds.ebay.sun.com)
2.Set this LDAP caontacts to default contacts
folder(Top Menu->Tools->Settings->Folder Settings->Default Folders->Contacts)
3.Create a new meeting in local calendar
4.Input any user name and press Enter in "Meeting" TAB page
5.Click "Save" button

Actual results:
after #4,evolution-wombat process eat over 97% CPU


Cause of this bug:
There is a infinite cycles in function:
get_cursor_handler() in pas-backend-ldap.c.
we should call ldap_next_entry() in each cycle.


regards


leon


Index: addressbook/ChangeLog
===================================================================
RCS file: /export/src/cvs/evolution/addressbook/ChangeLog,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 ChangeLog
--- addressbook/ChangeLog	2003/09/26 06:34:28	1.1.1.1
+++ addressbook/ChangeLog	2003/11/05 07:09:21
@@ -1,3 +1,9 @@
+2003-10-28 Leon Zhang <leon zhang sun com>
+
+	* backend/pas/pas-backend-ldap.c:
+	(get_cursor_handler): prevent accessing LDAP without stop.
+	Fix bug 50583.
+	
 2003-09-05  Dan Winship  <danw ximian com>
 
 	* gui/component/select-names/Makefile.am: Make libeselectnames.la
Index: addressbook/backend/pas/pas-backend-ldap.c
===================================================================
RCS file: /export/src/cvs/evolution/addressbook/backend/pas/pas-backend-ldap.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 pas-backend-ldap.c
--- addressbook/backend/pas/pas-backend-ldap.c	2003/09/26 06:34:28	1.1.1.1
+++ addressbook/backend/pas/pas-backend-ldap.c	2003/11/05 07:09:21
@@ -1839,6 +1839,7 @@
 										   vcard);
 				g_object_unref (simple);
 			}
+			e = ldap_next_entry (ldap, res);
 		}
 	}
 	else if (msg_type == LDAP_RES_SEARCH_RESULT) {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]