Blame SOURCES/evolution-data-server-3.28.5-dav-remove-ignores-not-found.patch

f0a9c3
diff -up evolution-data-server-3.28.5/src/addressbook/backends/webdav/e-book-backend-webdav.c.dav-remove-ignores-not-found evolution-data-server-3.28.5/src/addressbook/backends/webdav/e-book-backend-webdav.c
f0a9c3
--- evolution-data-server-3.28.5/src/addressbook/backends/webdav/e-book-backend-webdav.c.dav-remove-ignores-not-found	2018-11-28 14:31:11.278711852 +0100
f0a9c3
+++ evolution-data-server-3.28.5/src/addressbook/backends/webdav/e-book-backend-webdav.c	2018-11-28 14:32:38.231710649 +0100
f0a9c3
@@ -1160,6 +1160,13 @@ ebb_webdav_remove_contact_sync (EBookMet
f0a9c3
 	g_object_unref (contact);
f0a9c3
 	g_free (etag);
f0a9c3
 
f0a9c3
+	/* Ignore not found errors, this was a delete and the resource is gone.
f0a9c3
+	   It can be that it had been deleted on the server by other application. */
f0a9c3
+	if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_NOT_FOUND)) {
f0a9c3
+		g_clear_error (&local_error);
f0a9c3
+		success = TRUE;
f0a9c3
+	}
f0a9c3
+
f0a9c3
 	if (local_error) {
f0a9c3
 		ebb_webdav_check_credentials_error (bbdav, webdav, local_error);
f0a9c3
 		g_propagate_error (error, local_error);
f0a9c3
diff -up evolution-data-server-3.28.5/src/calendar/backends/caldav/e-cal-backend-caldav.c.dav-remove-ignores-not-found evolution-data-server-3.28.5/src/calendar/backends/caldav/e-cal-backend-caldav.c
f0a9c3
--- evolution-data-server-3.28.5/src/calendar/backends/caldav/e-cal-backend-caldav.c.dav-remove-ignores-not-found	2018-11-28 14:30:52.299712114 +0100
f0a9c3
+++ evolution-data-server-3.28.5/src/calendar/backends/caldav/e-cal-backend-caldav.c	2018-11-28 14:31:11.279711852 +0100
f0a9c3
@@ -1320,6 +1320,13 @@ ecb_caldav_remove_component_sync (ECalMe
f0a9c3
 	icalcomponent_free (icalcomp);
f0a9c3
 	g_free (etag);
f0a9c3
 
f0a9c3
+	/* Ignore not found errors, this was a delete and the resource is gone.
f0a9c3
+	   It can be that it had been deleted on the server by other application. */
f0a9c3
+	if (g_error_matches (local_error, SOUP_HTTP_ERROR, SOUP_STATUS_NOT_FOUND)) {
f0a9c3
+		g_clear_error (&local_error);
f0a9c3
+		success = TRUE;
f0a9c3
+	}
f0a9c3
+
f0a9c3
 	if (local_error) {
f0a9c3
 		ecb_caldav_check_credentials_error (cbdav, webdav, local_error);
f0a9c3
 		g_propagate_error (error, local_error);