From 17795b658cf770439124fdeb0d977e9dc4d4ad2a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9rome=20Perrin?= <jerome@nexedi.com>
Date: Fri, 16 Feb 2007 12:36:12 +0000
Subject: [PATCH] don't use hasattr for critical parts such as indexing.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@12812 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5Type/Core/Folder.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/product/ERP5Type/Core/Folder.py b/product/ERP5Type/Core/Folder.py
index 37a337c642..6ea4478fe5 100644
--- a/product/ERP5Type/Core/Folder.py
+++ b/product/ERP5Type/Core/Folder.py
@@ -548,7 +548,7 @@ class Folder( CopyContainer, CMFBTreeFolder, Base, FolderMixIn):
     if self.isIndexable:
       value_list.append(self)
       for c in self.objectValues():
-        if hasattr(aq_base(c), 'getIndexableChildValueList'):
+        if getattr(aq_base(c), 'getIndexableChildValueList', None) is not None:
           value_list.extend(c.getIndexableChildValueList())
     return value_list
 
@@ -566,7 +566,8 @@ class Folder( CopyContainer, CMFBTreeFolder, Base, FolderMixIn):
       # Reindex contents
       #LOG('recursiveImmediateReindexObject', 0, 'self = %r, self.objectValues = %r' % (self, self.objectValues()))
       for c in self.objectValues():
-        if hasattr(aq_base(c), 'recursiveImmediateReindexObject'):
+        if getattr(aq_base(c),
+                   'recursiveImmediateReindexObject', None) is not None:
           c.recursiveImmediateReindexObject(*args, **kw)
 
   security.declareProtected( Permissions.ModifyPortalContent, 'recursiveMoveObject' )
-- 
2.30.9