- 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).
This commit is contained in:
		
							parent
							
								
									632ead38c1
								
							
						
					
					
						commit
						66f62690bd
					
				
							
								
								
									
										56
									
								
								evolution-data-server-1.8.0-db4.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								evolution-data-server-1.8.0-db4.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,56 @@ | ||||
| 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); | ||||
							
								
								
									
										72
									
								
								evolution-data-server-1.8.0-fix-ldap-query.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								evolution-data-server-1.8.0-fix-ldap-query.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,72 @@ | ||||
| --- 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; | ||||
| @ -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 @@ Patch11: evolution-data-server-1.8.0-no-gnome-common.patch | ||||
| # 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 @@ evolution-data-server. | ||||
| %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 @@ rm -rf $RPM_BUILD_ROOT | ||||
| %{_libdir}/pkgconfig/libexchange-storage-%{eds_api_version}.pc | ||||
| 
 | ||||
| %changelog | ||||
| * Thu Oct 18 2007 Matthew Barnes <mbarnes@redhat.com> - 1.12.1-3.fc9 | ||||
| - 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@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. | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user