[Tickets #9278] Bug In SyncML calendar for Nokia devices

bugs at horde.org bugs at horde.org
Thu Sep 30 18:42:18 UTC 2010


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

Ticket URL: http://bugs.horde.org/ticket/9278
------------------------------------------------------------------------------
  Ticket             | 9278
  Created By         | fabio.bas at officineinformatiche.net
  Summary            | Bug In SyncML calendar for Nokia devices
  Queue              | Horde Base
  Version            | 3.3.9
  Type               | Bug
  State              | Unconfirmed
  Priority           | 1. Low
  Milestone          |
  Patch              | 1
  Owners             |
------------------------------------------------------------------------------


fabio.bas at officineinformatiche.net (2010-09-30 14:42) wrote:

in lib/SyncML/Sync.php, function "createSyncOutput", the variables  
$this->_server_adds, $this->_server_replaces and  
$this->_server_deletes contains arrays mapping suids (array keys) to  
cuids (array values), like this:
---
array (
   suid1 => cuid1,
   suid2 => cuid2
);
---
If  $device->handleTasksInCalendar() is true and the current database  
being synced is "calendar", those array will be merged to the  
corrispective add, replace and delete arrays for the "tasks" database.
The merge is made using array_merge, that clears the keys re-numbering  
them; this causes the wrong suids being retrieved from the database.  
Merging the arrays using the += operator solves the issue (if the  
device is reported to handle tasks in calendar, no key collision is  
supposed to be possible)
---
                 $this->_server_adds += $this->_server_task_adds;
                 $this->_server_replaces += $this->_server_replaces;
                 $this->_server_deletes += $this->_server_deletes;
---
---






More information about the bugs mailing list