[Tickets #12930] Re: AS: Endless loop with Samsung phone

noreply at bugs.horde.org noreply at bugs.horde.org
Tue Jan 21 15:52:52 UTC 2014


DO NOT REPLY TO THIS MESSAGE. THIS EMAIL ADDRESS IS NOT MONITORED.

Ticket URL: http://bugs.horde.org/ticket/12930
------------------------------------------------------------------------------
  Ticket             | 12930
  Updated By         | Michael Rubinsky <mrubinsk at horde.org>
  Summary            | AS: Endless loop with Samsung phone
  Queue              | Synchronization
  Version            | Git master
  Type               | Bug
  State              | Assigned
  Priority           | 1. Low
  Milestone          |
  Patch              |
  Owners             | Michael Rubinsky
------------------------------------------------------------------------------


Michael Rubinsky <mrubinsk at horde.org> (2014-01-21 15:52) wrote:

>>> Not sure about the infinite loop, but if helps you, it's dying
>>> because the MAXITEMS node is not expected. You can see this in
>>> Horde_ActiveSYnc_Request_Sync::  line 1142 where there is a TODO to
>>> remind me to implement it when we implement the RI cache.
>>
>> ...and that is EXACTLY why it loops. There is no escape from the
>> while() loop in that case.
>
> Thanks for the analysis!
>
> May be we should add a sanity limit of 5.000+ "sync options" the  
> next time an AS client sends us an unexpected tag ;) Just log it,  
> bail out of the loop and continue.

Either that or bail out if nothing was successfully parsed by the  
bottom of the loop. Something should be parsed through each iteration.


> The user mentioned something about a recent OTA Android update for  
> her phone. I have to ask for the specific model again. May be that  
> update "enabled" the RI collection.

If that's the case, I might as well go ahead and implement the RI  
functionality now since I'll have to implement at least part of it  
anyway. If the device is erroneously asking for the RI collection, it  
is probably also expecting a return value for it as well. Just  
ignoring the MAXITEMS is likely to cause problems on the client side.





More information about the bugs mailing list