rpms/evolution-data-server/F-8 evolution-data-server-1.8.0-db4.patch, NONE, 1.1 evolution-data-server-1.8.0-fix-ldap-query.patch, NONE, 1.1 evolution-data-server.spec, 1.189, 1.190

Matthew Barnes (mbarnes) fedora-extras-commits at redhat.com
Fri Oct 19 17:07:21 UTC 2007


Author: mbarnes

Update of /cvs/pkgs/rpms/evolution-data-server/F-8
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv14547

Modified Files:
	evolution-data-server.spec 
Added Files:
	evolution-data-server-1.8.0-db4.patch 
	evolution-data-server-1.8.0-fix-ldap-query.patch 
Log Message:

* Thu Oct 18 2007 Matthew Barnes <mbarnes at redhat.com> - 1.12.1-3.fc8
- Porting a couple patches over from RHEL5:
- Add patch for RH bug #212106 (address book error on fresh install).
- Add patch for RH bug #215702 (bad search filter for LDAP address books).


evolution-data-server-1.8.0-db4.patch:

--- NEW FILE evolution-data-server-1.8.0-db4.patch ---
diff -up evolution-data-server-1.12.1/addressbook/backends/file/e-book-backend-file.c.db4 evolution-data-server-1.12.1/addressbook/backends/file/e-book-backend-file.c
--- evolution-data-server-1.12.1/addressbook/backends/file/e-book-backend-file.c.db4	2007-10-12 02:29:47.000000000 -0400
+++ evolution-data-server-1.12.1/addressbook/backends/file/e-book-backend-file.c	2007-10-19 11:56:03.000000000 -0400
@@ -1137,23 +1137,30 @@ e_book_backend_file_load_source (EBookBa
 			return db_error_to_status (db_error);
 		}
 
+		db->close (db, 0);
+		db_error = db_create (&db, env, 0);
+		if (db_error != 0) {
+			g_warning ("db_create failed with %s", db_strerror (db_error));
+			g_free (dirname);
+			g_free (filename);
+			return db_error_to_status (db_error);
+		}
+
 		db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_THREAD, 0666);
 	}
 
-	bf->priv->file_db = db;
-
 	if (db_error == 0) {
 		writable = TRUE;
 	} else {
 		db->close (db, 0);
-		
         	db_error = db_create (&db, env, 0);
         	if (db_error != 0) {
                 	g_warning ("db_create failed with %s", db_strerror (db_error));
                 	g_free (dirname);
                 	g_free (filename);
-                	return GNOME_Evolution_Addressbook_OtherError;
+                	return db_error_to_status (db_error);
         	}
+
 		db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_RDONLY | DB_THREAD, 0666);
 
 		if (db_error != 0 && !only_if_exists) {
@@ -1178,7 +1185,7 @@ e_book_backend_file_load_source (EBookBa
  				g_warning ("db_create failed with %s", db_strerror (db_error));
 				g_free (dirname);
 				g_free (filename);
-				return GNOME_Evolution_Addressbook_OtherError;
+				return db_error_to_status (db_error);
 			}
 
 			db_error = (*db->open) (db, NULL, filename, NULL, DB_HASH, DB_CREATE | DB_THREAD, 0666);
@@ -1201,6 +1208,8 @@ e_book_backend_file_load_source (EBookBa
 		}
 	}
 
+	bf->priv->file_db = db;
+	
 	if (db_error != 0) {
 		bf->priv->file_db = NULL;
 		g_free (dirname);

evolution-data-server-1.8.0-fix-ldap-query.patch:

--- NEW FILE evolution-data-server-1.8.0-fix-ldap-query.patch ---
--- evolution-data-server-1.8.0/addressbook/backends/ldap/e-book-backend-ldap.c.fix-ldap-query	2006-09-02 02:36:49.000000000 -0400
+++ evolution-data-server-1.8.0/addressbook/backends/ldap/e-book-backend-ldap.c	2007-07-02 14:21:14.000000000 -0400
@@ -3209,22 +3209,28 @@
 	char ** strings;
 
 	if (argc > 0) {
-		int i;
+		int i, empty;
 
 		strings = g_new0(char*, argc+3);
 		strings[0] = g_strdup ("(&");
 		strings[argc+3 - 2] = g_strdup (")");
 		
+		empty = 0;
 		for (i = 0; i < argc; i ++) {
 			GList *list_head = ldap_data->list;
 			if (!list_head)
 				break;
+			if (strlen (list_head->data) == 0)
+				empty++;
 			strings[argc - i] = list_head->data;
 			ldap_data->list = g_list_remove_link(list_head, list_head);
 			g_list_free_1(list_head);
 		}
 
-		ldap_data->list = g_list_prepend(ldap_data->list, g_strjoinv(" ", strings));
+		if (empty == argc)
+			ldap_data->list = g_list_prepend(ldap_data->list, g_strdup(" "));
+		else
+			ldap_data->list = g_list_prepend(ldap_data->list, g_strjoinv(" ", strings));
 
 		for (i = 0 ; i < argc + 2; i ++)
 			g_free (strings[i]);
@@ -3246,22 +3252,28 @@
 	char ** strings;
 
 	if (argc > 0) {
-		int i;
+		int i, empty;
 
 		strings = g_new0(char*, argc+3);
 		strings[0] = g_strdup ("(|");
 		strings[argc+3 - 2] = g_strdup (")");
 
+		empty = 0;
 		for (i = 0; i < argc; i ++) {
 			GList *list_head = ldap_data->list;
 			if (!list_head)
 				break;
+			if (strlen (list_head->data) == 0)
+				empty++;
 			strings[argc - i] = list_head->data;
 			ldap_data->list = g_list_remove_link(list_head, list_head);
 			g_list_free_1(list_head);
 		}
 
-		ldap_data->list = g_list_prepend(ldap_data->list, g_strjoinv(" ", strings));
+		if (empty == argc)
+			ldap_data->list = g_list_prepend(ldap_data->list, g_strdup(" "));
+		else
+			ldap_data->list = g_list_prepend(ldap_data->list, g_strjoinv(" ", strings));
 
 		for (i = 0 ; i < argc + 2; i ++)
 			g_free (strings[i]);
@@ -3410,6 +3422,7 @@
 		char *ldap_attr = query_prop_to_ldap(propname);
 
 		if (strlen (str) == 0) {
+			ldap_data->list = g_list_prepend(ldap_data->list, g_strdup (""));
 			r = e_sexp_result_new (f, ESEXP_RES_BOOL);
 			r->value.bool = FALSE;
 			return r;


Index: evolution-data-server.spec
===================================================================
RCS file: /cvs/pkgs/rpms/evolution-data-server/F-8/evolution-data-server.spec,v
retrieving revision 1.189
retrieving revision 1.190
diff -u -r1.189 -r1.190
--- evolution-data-server.spec	16 Oct 2007 20:07:41 -0000	1.189
+++ evolution-data-server.spec	19 Oct 2007 17:06:43 -0000	1.190
@@ -27,7 +27,7 @@
 
 Name: evolution-data-server
 Version: 1.12.1
-Release: 2%{?dist}
+Release: 3%{?dist}
 License: LGPL
 Group: System Environment/Libraries
 Summary: Backend data server for Evolution
@@ -46,21 +46,27 @@
 # RH bug #202309
 Patch12: evolution-data-server-1.7.91-maybe-fix-crash.patch
 
+# RH bug #212106
+Patch13: evolution-data-server-1.8.0-db4.patch
+
+# RH bug #215702 / GNOME bug #487988
+Patch14: evolution-data-server-1.8.0-fix-ldap-query.patch
+
 # GNOME bug #363695
-Patch14: evolution-data-server-1.9.1-kill-ememory.patch
+Patch15: evolution-data-server-1.9.1-kill-ememory.patch
 
 # GNOME bug #376991
 # XXX Disabled due to outstanding issues.
 #Patch16: evolution-data-server-1.9.92-e-passwords.patch
 
 # GNOME bug #417999
-Patch18: evolution-data-server-1.10.0-code-cleanup.patch
+Patch17: evolution-data-server-1.10.0-code-cleanup.patch
 
 # GNOME bug #373146
-Patch19: evolution-data-server-1.10.1-camel-folder-summary-crash.patch
+Patch18: evolution-data-server-1.10.1-camel-folder-summary-crash.patch
 
 # RH bug #243296
-Patch20: evolution-data-server-1.11.5-fix-64bit-acinclude.patch
+Patch19: evolution-data-server-1.11.5-fix-64bit-acinclude.patch
 
 ### Dependencies ###
 
@@ -145,11 +151,13 @@
 %patch10 -p1 -b .ldaphack
 %patch11 -p1 -b .no-gnome-common
 %patch12 -p1 -b .maybe-fix-crash
-%patch14 -p1 -b .kill-ememory
+%patch13 -p1 -b .db4
+%patch14 -p1 -b .fix-ldap-query
+%patch15 -p1 -b .kill-ememory
 #%patch16 -p1 -b .e-passwords
-%patch18 -p1 -b .code-cleanup
-%patch19 -p1 -b .camel-folder-symmary-crash
-%patch20 -p1 -b .fix-64bit-acinclude
+%patch17 -p1 -b .code-cleanup
+%patch18 -p1 -b .camel-folder-summary-crash
+%patch19 -p1 -b .fix-64bit-acinclude
 
 mkdir -p krb5-fakeprefix/include
 mkdir -p krb5-fakeprefix/lib
@@ -382,6 +390,11 @@
 %{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc
 
 %changelog
+* Thu Oct 18 2007 Matthew Barnes <mbarnes at redhat.com> - 1.12.1-3.fc8
+- Porting a couple patches over from RHEL5:
+- Add patch for RH bug #212106 (address book error on fresh install).
+- Add patch for RH bug #215702 (bad search filter for LDAP address books).
+
 * Tue Oct 16 2007 Matthew Barnes <mbarnes at redhat.com> - 1.12.1-2.fc8
 - Disable patch for GNOME bug #376991 for now.  It may be contributing
   to password prompting problems as described in RH bug #296671.




More information about the fedora-extras-commits mailing list