From 3f22413dda99bbd5ab9f9d35d462cad36b789617 Mon Sep 17 00:00:00 2001 From: mguessan Date: Tue, 22 Dec 2009 21:47:43 +0000 Subject: [PATCH] Caldav: fix bug 2896135, iCal login fails at iCal startup git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@895 3d1905a2-6b24-0410-a738-b14d5a86fcbd --- src/java/davmail/caldav/CaldavConnection.java | 26 ++++++++++--------- 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/src/java/davmail/caldav/CaldavConnection.java b/src/java/davmail/caldav/CaldavConnection.java index 8818447b..8fb6b9b1 100644 --- a/src/java/davmail/caldav/CaldavConnection.java +++ b/src/java/davmail/caldav/CaldavConnection.java @@ -786,7 +786,7 @@ public class CaldavConnection extends AbstractConnection { } // send user outbox if (request.hasProperty("schedule-outbox-URL")) { - response.appendHrefProperty("C:schedule-outbox-URL", "/users/"+session.getEmail()+"/outbox" ); + response.appendHrefProperty("C:schedule-outbox-URL", "/users/" + session.getEmail() + "/outbox"); } } @@ -996,16 +996,18 @@ public class CaldavConnection extends AbstractConnection { */ public void sendHttpResponse(int status, Map headers, String contentType, byte[] content, boolean keepAlive) throws IOException { sendClient("HTTP/1.1 " + status + ' ' + HttpStatus.getStatusText(status)); - String version = DavGateway.getCurrentVersion(); - sendClient("Server: DavMail Gateway " + (version == null ? "" : version)); - sendClient("DAV: 1, calendar-access, calendar-schedule, calendarserver-private-events"); - SimpleDateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH); - // force GMT timezone - formatter.setTimeZone(ExchangeSession.GMT_TIMEZONE); - String now = formatter.format(new Date()); - sendClient("Date: " + now); - sendClient("Expires: " + now); - sendClient("Cache-Control: private, max-age=0"); + if (status != HttpStatus.SC_UNAUTHORIZED) { + String version = DavGateway.getCurrentVersion(); + sendClient("Server: DavMail Gateway " + (version == null ? "" : version)); + sendClient("DAV: 1, calendar-access, calendar-schedule, calendarserver-private-events"); + SimpleDateFormat formatter = new SimpleDateFormat("EEE, dd MMM yyyy HH:mm:ss Z", Locale.ENGLISH); + // force GMT timezone + formatter.setTimeZone(ExchangeSession.GMT_TIMEZONE); + String now = formatter.format(new Date()); + sendClient("Date: " + now); + sendClient("Expires: " + now); + sendClient("Cache-Control: private, max-age=0"); + } if (headers != null) { for (Map.Entry header : headers.entrySet()) { sendClient(header.getKey() + ": " + header.getValue()); @@ -1383,7 +1385,7 @@ public class CaldavConnection extends AbstractConnection { if (subFolder == null || subFolder.length() == 0) { return getExchangeFolderPath(); } else { - return getExchangeFolderPath()+'/'+subFolder; + return getExchangeFolderPath() + '/' + subFolder; } } }