From ae0cbfe6a61610acfe3b3325e6cc9ef58332f6b4 Mon Sep 17 00:00:00 2001 From: Ludovic Marcotte Date: Fri, 5 Dec 2014 13:52:10 -0500 Subject: [PATCH] Fix for bug #2982 --- ActiveSync/SOGoActiveSyncDispatcher.m | 16 ++++++++++++++-- NEWS | 1 + 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/ActiveSync/SOGoActiveSyncDispatcher.m b/ActiveSync/SOGoActiveSyncDispatcher.m index 5d1fd7da9..2223ea379 100644 --- a/ActiveSync/SOGoActiveSyncDispatcher.m +++ b/ActiveSync/SOGoActiveSyncDispatcher.m @@ -1464,8 +1464,20 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. if (!dstMessageId) { - // FIXME: should we return 1 or 2 here? - [s appendFormat: @"%d", 2]; + // Our destination message ID doesn't exist OR even our source message ID doesn't. + // This can happen if you Move items from your EAS client and immediately closes it + // before the server had the time to receive or process the query. Then, if that message + // is moved away by an other client behing the EAS' client back, it obvisouly won't find it. + // The issue the "result" will still be a success, but in fact, it's a failure. Cyrus generates + // this kind of query/response for an 'unkknown' message UID (696969) when trying to copy it + // over to the folder "Trash". + // + // 3 uid copy 696969 "Trash" + // 3 OK Completed + // + // See http://msdn.microsoft.com/en-us/library/gg651088(v=exchg.80).aspx for Status response codes. + // + [s appendFormat: @"%d", 1]; } else { diff --git a/NEWS b/NEWS index 69ae92e56..d0282ba99 100644 --- a/NEWS +++ b/NEWS @@ -11,6 +11,7 @@ Bug fixes - We now generate SAML2 metadata on the fly (#2378) - We now handle correctly the SOGo logout when using SAML (#2376 and #2379) - Fixed freebusy lookups going off bounds for resources (#3010) + - Fixed EAS clients moving mails between folders but disconnecting before receiving server's response (#2982) 2.2.10 (2014-11-21) -------------------