[Erp5-report] r9327 - /erp5/trunk/products/ERP5Type/Document/Folder.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue Aug 22 16:30:45 CEST 2006
Author: vincent
Date: Tue Aug 22 16:30:43 2006
New Revision: 9327
URL: http://svn.erp5.org?rev=9327&view=rev
Log:
Protect against non-string values in id_generator. This should fix most unit test steps in ERP5SyncML.
Modified:
erp5/trunk/products/ERP5Type/Document/Folder.py
Modified: erp5/trunk/products/ERP5Type/Document/Folder.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Document/Folder.py?rev=9327&r1=9326&r2=9327&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Document/Folder.py (original)
+++ erp5/trunk/products/ERP5Type/Document/Folder.py Tue Aug 22 16:30:43 2006
@@ -154,15 +154,19 @@
if id_group is None:
id_group = self.getIdGroup()
if id_group in (None, 'None'):
- idGenerator = getattr(self, self.getIdGenerator(), None)
- if idGenerator is None:
+ id_generator = self.getIdGenerator()
+ if isinstance(id_generator, str):
+ idGenerator = getattr(self, id_generator, None)
+ if idGenerator is None:
+ idGenerator = self._generateNextId
+ else:
+ LOG('Folder.generateNewId', 0, '%s.id_generator is not a string. Falling back on default behaviour.' % (self.absolute_url(), ))
idGenerator = self._generateNextId
my_id = idGenerator()
while self.hasContent(my_id):
my_id = _generateNextId()
else:
my_id = str(self.portal_ids.generateNewId(id_group=id_group,default=default,method=method))
-
return my_id
security.declareProtected(Permissions.View, 'hasContent')
More information about the Erp5-report
mailing list