[Erp5-report] r40845 arnaud.fontaine - /erp5/trunk/products/ERP5/Document/BusinessTemplate.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Mon Nov 29 10:47:49 CET 2010
Author: arnaud.fontaine
Date: Mon Nov 29 10:47:49 2010
New Revision: 40845
URL: http://svn.erp5.org?rev=40845&view=rev
Log:
Fix the infinite recursion when solving Portal Types dependencies in a
better way than an plain assert
Modified:
erp5/trunk/products/ERP5/Document/BusinessTemplate.py
Modified: erp5/trunk/products/ERP5/Document/BusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessTemplate.py?rev=40845&r1=40844&r2=40845&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] Mon Nov 29 10:47:49 2010
@@ -1896,8 +1896,12 @@ class PortalTypeTemplateItem(ObjectTempl
else:
portal_type = klass.__name__
depend = path_dict.get(portal_type)
- # Prevent infinite recursion
- assert depend != path
+ # Prevent infinite recursion for 'portal_types/Base Type',
+ # only relevant with Portal Types classes because 'Base Type'
+ # is an 'erp5.portal_type.Base Type' class
+ if depend == path:
+ assert depend == 'portal_types/Base Type'
+ return 0, path
cache[path] = score = depend and 1 + solveDependency(depend)[0] or 0
return score, path
PersistentMigrationMixin._no_migration += 1
More information about the Erp5-report
mailing list