[Erp5-report] r42638 kazuhiko - /erp5/trunk/products/ERP5/Document/BusinessTemplate.py

nobody at svn.erp5.org nobody at svn.erp5.org
Mon Jan 24 20:43:48 CET 2011


Author: kazuhiko
Date: Mon Jan 24 20:43:47 2011
New Revision: 42638

URL: http://svn.erp5.org?rev=42638&view=rev
Log:
since r42523, unrestrictedTraverse(relative_url) can raise KeyError if the object is specified as 'do nothing' when installing, so we need to do 'nothing' check before calling unrestrictedTraverse(relative_url). this change fixes current failure of test_updateBusinessTemplateFromUrl_keep_list in testBusinessTemplate.py.

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=42638&r1=42637&r2=42638&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] Mon Jan 24 20:43:47 2011
@@ -1561,16 +1561,15 @@ class SkinTemplateItem(ObjectTemplateIte
     p = context.getPortalObject()
     skin_tool = p.portal_skins
     for relative_url in self._objects.keys():
-      folder = p.unrestrictedTraverse(relative_url)
-      for obj in folder.objectValues(spec=('Z SQL Method',)):
-        fixZSQLMethod(p, obj)
-
       # Do not register skin which were explicitely ask not to be installed
       if context.getTemplateFormatVersion() == 1:
         if update_dict.has_key(relative_url) or force:
           if not force:
             if update_dict[relative_url] == 'nothing':
               continue
+      folder = p.unrestrictedTraverse(relative_url)
+      for obj in folder.objectValues(spec=('Z SQL Method',)):
+        fixZSQLMethod(p, obj)
       if folder.aq_parent.meta_type == 'CMF Skins Tool':
         registerSkinFolder(skin_tool, folder)
 



More information about the Erp5-report mailing list