Index: roundup/cgi/actions.py =================================================================== --- roundup/cgi/actions.py (revision 143) +++ roundup/cgi/actions.py (working copy) @@ -425,21 +425,15 @@ props = all_props[(linkcn, linkid)] cl = self.db.classes[linkcn] propdef = cl.getprops()[linkprop] - if not props.has_key(linkprop): - if linkid is None or linkid.startswith('-'): - # linking to a new item - if isinstance(propdef, hyperdb.Multilink): - props[linkprop] = [newid] + if isinstance(propdef, hyperdb.Multilink): + if not props.has_key(linkprop): + if linkid is None or linkid.startswith('-'): + props[linkprop] = [] else: - props[linkprop] = newid - else: - # linking to an existing item - if isinstance(propdef, hyperdb.Multilink): - existing = cl.get(linkid, linkprop)[:] - existing.append(nodeid) - props[linkprop] = existing - else: - props[linkprop] = newid + props[linkprop] = cl.get(linkid, linkprop)[:] + props[linkprop].append(newid) + else: + props[linkprop] = newid return '
'.join(m)