[dev] [PATCH] ActiveSync: Fix email sync error on corner case

Michael J Rubinsky mrubinsk at horde.org
Thu Dec 12 16:14:44 UTC 2013


Quoting Thomas Jarosch <thomas.jarosch at intra2net.com>:

> On Thursday, 12. December 2013 10:59:57 Michael J Rubinsky wrote:
>> Quoting Thomas Jarosch <thomas.jarosch at intra2net.com>:
>> > This fixes the "ERR: Unknown message." error in the ActiveSync log.
>> >
>> > After adding debug output the involved data structures,
>> > the data looked like this:
>> >
>> > 2013-12-12T12:24:24+01:00 ERR: HORDE [horde] Unknown message: uid:
>> > 65298, uidnext: 78953, minuid: 65298,
>> > this->messages:
>> > (
>> >
>> >     [65298] => 0
>> >     [65299] => 1
>> >     [65300] => 2
>> >     [65301] => 3
>> >
>> > ...
>> > )
>> >
>> > As the value of for $this->messages[65298] is 0, empty() will return
>> > true. -> We have to use isset() for the test.
>>
>> I don't think this is correct. If you are using a NON-CONDSTORE
>> server, $this->_messages should contain array values, not integer
>> values. It is where we store the flag state for each message in order
>> to detect any flag changes. Where did you dump this value from?
>
> good catch. I dumped the info exactly one line above the
>
>     throw new Horde_ActiveSync_Exception('Unknown message.');
>
> line in
>
>     framework/ActiveSync/lib/Horde/ActiveSync/Folder/Imap.php
>
>
> Hmm. What about the array_diff() call in setSoftDeleted()?
> I think it will destroy the array values.

That method is/should only be called for CONDSTORE servers.
-- 
mike

The Horde Project (www.horde.org)
mrubinsk at horde.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 5849 bytes
Desc: S/MIME Signature
URL: <http://lists.horde.org/archives/dev/attachments/20131212/9090a0df/attachment-0001.bin>


More information about the dev mailing list