Summary | syncml broken because of tasklist required on update |
Queue | Nag |
Queue Version | 2.3.1 |
Type | Bug |
State | No Feedback |
Priority | 2. Medium |
Owners | Horde Developers (at) |
Requester | michael-dev (at) fami-braun (dot) de |
Created | 04/09/2009 (5902 days ago) |
Due | |
Updated | 04/29/2009 (5882 days ago) |
Assigned | 04/16/2009 (5895 days ago) |
Resolved | 04/29/2009 (5882 days ago) |
Milestone | 2.3.3 |
Patch | No |
just thought it would have been included after the release on
groupware-webmail-1.2.2 and so no feedback would be required.
Looking into the code i found that that line has been included in cvs
since 2008 but is not in the stable horde groupware webmail 1.2.2
release end of jan 2009, where code looks like this:
% $new_task = $this->get($task->id);
% $log_tasklist = $this->_tasklist;
322 % if ($task->tasklist != $tasklist) {
% /* Moving the task to another tasklist. */
% $share = $GLOBALS['nag_shares']->getShare($task->tasklist);
% if (!is_a($share, 'PEAR_Error') &&
I don't know why it is not in the released code or how to find the
release version in cvs (a GROUPWARE_WEBMAIL_1_2_2 tag would be great).
It is probably sufficient to include that line as it is in cvs into
the next release.
State ⇒ Feedback
http://cvs.horde.org/annotate.php/nag/lib/Driver.php?rev=1.57.2.26#l322
Milestone ⇒ 2.3.3
Type ⇒ Bug
Priority ⇒ 1. Low
Priority ⇒ 2. Medium
Type ⇒ Enhancement
Summary ⇒ syncml broken because of tasklist required on update
Queue ⇒ Nag
Milestone ⇒
Patch ⇒ Yes
State ⇒ New
client, this failes because it is tried to update a tasklist of an
existing task to NULL.
In /usr/share/horde/horde/nag/lib/Driver.php on line 345 an error
occurs because $share is a PEAR_ERROR. This is not properly caught.
The solution is to change line 322 to look like
if ($task->tasklist != $tasklist && $tasklist != null) {
. This prevents setting a tasklist to NULL. Calling modify with
tasklist=NULL looks valid to me, because the parameter is declared
optional.