[evolution-data-server] Bug #660182 - Error dialog on LDAP query with multiple referrals



commit 13b9717a0a3256e7f4673c87772d1b828d0b524c
Author: Milan Crha <mcrha redhat com>
Date:   Tue Oct 25 09:58:25 2011 +0200

    Bug #660182 - Error dialog on LDAP query with multiple referrals

 addressbook/backends/ldap/e-book-backend-ldap.c |   25 +++++++++++++---------
 1 files changed, 15 insertions(+), 10 deletions(-)
---
diff --git a/addressbook/backends/ldap/e-book-backend-ldap.c b/addressbook/backends/ldap/e-book-backend-ldap.c
index d65e610..09b4c69 100644
--- a/addressbook/backends/ldap/e-book-backend-ldap.c
+++ b/addressbook/backends/ldap/e-book-backend-ldap.c
@@ -2008,8 +2008,9 @@ modify_contact_search_handler (LDAPOp *op,
 		modify_op->current_contact = build_contact_from_entry (bl, e,
 								       &modify_op->existing_objectclasses,
 								       &modify_op->ldap_uid);
-	}
-	else if (msg_type == LDAP_RES_SEARCH_RESULT) {
+	} else if (msg_type == LDAP_RES_SEARCH_REFERENCE) {
+		/* ignore references */
+	} else if (msg_type == LDAP_RES_SEARCH_RESULT) {
 		gchar *ldap_error_msg;
 		gint ldap_error;
 		gint new_dn_needed;
@@ -2405,8 +2406,9 @@ get_contact_handler (LDAPOp *op,
 			printf ("get_contact_handler took %ld.%03ld seconds \n",
 				 diff / 1000, diff % 1000);
 		}
-	}
-	else if (msg_type == LDAP_RES_SEARCH_RESULT) {
+	} else if (msg_type == LDAP_RES_SEARCH_REFERENCE) {
+		/* ignore references */
+	} else if (msg_type == LDAP_RES_SEARCH_RESULT) {
 		gchar *ldap_error_msg;
 		gint ldap_error;
 
@@ -2594,8 +2596,9 @@ contact_list_handler (LDAPOp *op,
 			e = ldap_next_entry (bl->priv->ldap, e);
 			g_static_rec_mutex_unlock (&eds_ldap_handler_lock);
 		}
-	}
-	else if (msg_type == LDAP_RES_SEARCH_RESULT) {
+	} else if (msg_type == LDAP_RES_SEARCH_REFERENCE) {
+		/* ignore references */
+	} else if (msg_type == LDAP_RES_SEARCH_RESULT) {
 		gchar *ldap_error_msg;
 		gint ldap_error;
 
@@ -2819,8 +2822,9 @@ contact_list_uids_handler (LDAPOp *op,
 			e = ldap_next_entry (bl->priv->ldap, e);
 			g_static_rec_mutex_unlock (&eds_ldap_handler_lock);
 		}
-	}
-	else if (msg_type == LDAP_RES_SEARCH_RESULT) {
+	} else if (msg_type == LDAP_RES_SEARCH_REFERENCE) {
+		/* ignore references */
+	} else if (msg_type == LDAP_RES_SEARCH_RESULT) {
 		gchar *ldap_error_msg;
 		gint ldap_error;
 
@@ -4709,8 +4713,9 @@ ldap_search_handler (LDAPOp *op,
 			e = ldap_next_entry (bl->priv->ldap, e);
 			g_static_rec_mutex_unlock (&eds_ldap_handler_lock);
 		}
-	}
-	else if (msg_type == LDAP_RES_SEARCH_RESULT) {
+	} else if (msg_type == LDAP_RES_SEARCH_REFERENCE) {
+		/* ignore references */
+	} else if (msg_type == LDAP_RES_SEARCH_RESULT) {
 		GError *edb_err = NULL;
 		gchar *ldap_error_msg;
 		gint ldap_error;



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