[Tickets #12489] DTEND incremented on ical export for no real reason

noreply at bugs.horde.org noreply at bugs.horde.org
Wed Jul 24 02:19:21 UTC 2013


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

Ticket URL: http://bugs.horde.org/ticket/12489
------------------------------------------------------------------------------
  Ticket             | 12489
  Created By         | stefan at baer.rwth-aachen.de
  Summary            | DTEND incremented on ical export for no real reason
  Queue              | Kronolith
  Version            | 4.1.2
  Type               | Bug
  State              | Unconfirmed
  Priority           | 3. High
  Milestone          |
  Patch              |
  Owners             |
------------------------------------------------------------------------------


stefan at baer.rwth-aachen.de (2013-07-24 02:19) wrote:

Line 640 in kronolith/lib/Event.php (exporting icals):
$end->sec++;

Here $end->sec is incremented with the intention, that DTEND MUST be  
later than DTSTART. But it is incremented whether it's neccessary or  
not. If DTEND already IS later than DTSTART, a second will be added on  
every ical export.

This leads to duplicates when syncing with the Synthesis SyncML  
client.  Since Horde doesn't do a correct SlowSync (no duplicate  
elimination), the Synthesis guys built a duplicate elimination into  
their client. But since the events differ by one second (incrementing  
on each new SlowSync!!), this duplicate elimination fails.

Even without syncing this bogus incrementation by one second could  
lead to wrong times. Export the event and import it into horde again  
and repeat this 60 times, the end time of the event is moves by a  
whole minute!

I would check, if the end time differs from the start time and ONLY in  
that case do the incrementation on the end second.






More information about the bugs mailing list