Skip to content

Commit a66eb18

Browse files
committed
Caldav: detect and ignore Thunderbird fake put request
git-svn-id: https://svn.code.sf.net/p/davmail/code/trunk@4053 3d1905a2-6b24-0410-a738-b14d5a86fcbd
1 parent 1fc54a1 commit a66eb18

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

src/java/davmail/caldav/CaldavConnection.java

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -296,9 +296,13 @@ protected void handleFolderOrItem(CaldavRequest request) throws IOException {
296296
} else if (request.isPut()) {
297297
String etag = request.getHeader("if-match");
298298
String noneMatch = request.getHeader("if-none-match");
299-
ExchangeSession.ItemResult itemResult = session.createOrUpdateItem(request.getFolderPath(), lastPath, request.getBody(), etag, noneMatch);
300-
sendHttpResponse(itemResult.status, buildEtagHeader(request, itemResult), null, "", true);
301-
299+
if (request.getBody() == null || request.getBody().isEmpty()) {
300+
// thunderbird check, ignore
301+
sendHttpResponse(HttpStatus.SC_OK, null);
302+
} else {
303+
ExchangeSession.ItemResult itemResult = session.createOrUpdateItem(request.getFolderPath(), lastPath, request.getBody(), etag, noneMatch);
304+
sendHttpResponse(itemResult.status, buildEtagHeader(request, itemResult), null, "", true);
305+
}
302306
} else if (request.isDelete()) {
303307
if (request.getFolderPath().endsWith("inbox")) {
304308
session.processItem(request.getFolderPath(), lastPath);

0 commit comments

Comments
 (0)