summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMilan Crha <mcrha@redhat.com>2010-07-12 16:17:19 +0200
committerMilan Crha <mcrha@redhat.com>2010-07-12 16:17:19 +0200
commit42caa8c21d28b89ab40d38b520e1cb9937a34e1b (patch)
tree5f3d91d9a6f7bbae08904ec4642abf57102de9b5
parentf6e680f9333b02f64d486994e9c55d61967ce6b8 (diff)
downloadevolution-data-server-42caa8c21d28b89ab40d38b520e1cb9937a34e1b.tar.gz
Bug #623936 - 75 second delay when creating new DAV entries in Zimbra
-rw-r--r--addressbook/backends/webdav/e-book-backend-webdav.c16
-rw-r--r--calendar/backends/caldav/e-cal-backend-caldav.c3
2 files changed, 11 insertions, 8 deletions
diff --git a/addressbook/backends/webdav/e-book-backend-webdav.c b/addressbook/backends/webdav/e-book-backend-webdav.c
index b851b1ea5..2ba4536d5 100644
--- a/addressbook/backends/webdav/e-book-backend-webdav.c
+++ b/addressbook/backends/webdav/e-book-backend-webdav.c
@@ -137,8 +137,8 @@ download_contact(EBookBackendWebdav *webdav, const gchar *uri)
guint status;
message = soup_message_new(SOUP_METHOD_GET, uri);
- soup_message_headers_append(message->request_headers,
- "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "Connection", "close");
status = soup_session_send_message(webdav->priv->session, message);
if (status != 200) {
@@ -198,8 +198,8 @@ upload_contact(EBookBackendWebdav *webdav, EContact *contact)
}
message = soup_message_new(SOUP_METHOD_PUT, uri);
- soup_message_headers_append(message->request_headers,
- "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "Connection", "close");
property = e_source_get_property(source, "avoid_ifmatch");
if (property != NULL && strcmp(property, "1") == 0) {
@@ -362,8 +362,8 @@ delete_contact(EBookBackendWebdav *webdav, const gchar *uri)
guint status;
message = soup_message_new(SOUP_METHOD_DELETE, uri);
- soup_message_headers_append(message->request_headers,
- "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "Connection", "close");
status = soup_session_send_message(webdav->priv->session, message);
g_object_unref(message);
@@ -656,8 +656,8 @@ send_propfind(EBookBackendWebdav *webdav)
"<propfind xmlns=\"DAV:\"><prop><getetag/></prop></propfind>";
message = soup_message_new(SOUP_METHOD_PROPFIND, priv->uri);
- soup_message_headers_append(message->request_headers,
- "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "User-Agent", USERAGENT);
+ soup_message_headers_append (message->request_headers, "Connection", "close");
soup_message_headers_append(message->request_headers, "Depth", "1");
soup_message_set_request(message, "text/xml", SOUP_MEMORY_TEMPORARY,
(gchar *) request, strlen(request));
diff --git a/calendar/backends/caldav/e-cal-backend-caldav.c b/calendar/backends/caldav/e-cal-backend-caldav.c
index 41c898d80..5e7ecc4ef 100644
--- a/calendar/backends/caldav/e-cal-backend-caldav.c
+++ b/calendar/backends/caldav/e-cal-backend-caldav.c
@@ -889,11 +889,14 @@ send_and_handle_redirection (SoupSession *soup_session, SoupMessage *msg, gchar
{
gchar *old_uri = NULL;
+ g_return_if_fail (msg != NULL);
+
if (new_location)
old_uri = soup_uri_to_string (soup_message_get_uri (msg), FALSE);
soup_message_set_flags (msg, SOUP_MESSAGE_NO_REDIRECT);
soup_message_add_header_handler (msg, "got_body", "Location", G_CALLBACK (redirect_handler), soup_session);
+ soup_message_headers_append (msg->request_headers, "Connection", "close");
soup_session_send_message (soup_session, msg);
if (new_location) {