--- CopySupport.py.2.3.0-final Sat Jan 27 10:04:42 2001 +++ CopySupport.py Sat Jan 27 10:10:48 2001 @@ -280,9 +280,20 @@ """Rename several sub-objects""" if len(ids) != len(new_ids): raise 'BadRequst','Please rename each listed object.' + conflicts = [] for i in range(len(ids)): if ids[i] != new_ids[i]: + if new_ids[i] not in ids : # may a conflict occur ? self.manage_renameObject(ids[i], new_ids[i], REQUEST) + else : + tempo = ".temporary_%i_" % i + self.manage_renameObject(ids[i], tempo) + conflicts.append((tempo, new_ids[i])) + + # now we rename conflictuous objects + for (old, new) in conflicts : + self.manage_renameObject(old, new) + if REQUEST is not None: return self.manage_main(self, REQUEST, update_menu=1) return None