diff --git a/product/ERP5Type/ERP5Type.py b/product/ERP5Type/ERP5Type.py
index b8e01621019f5d78e7fe63806b9f9490e850283c..611a45da916d8af7eec4cfd9c630edb1c0115131 100644
--- a/product/ERP5Type/ERP5Type.py
+++ b/product/ERP5Type/ERP5Type.py
@@ -392,7 +392,12 @@ class ERP5TypeInformation(XMLObject,
           # workflow and it is annoyning without security setted
           ob.portal_type = self.getId()
 
-        self.updateLocalRolesOnDocument(ob)
+        # Here we don't use "if len(self.getFilteredRoleListFor(ob))"
+        # but use "for role in self.getFilteredRoleListFor(ob)" because
+        # getFilteredRoleListFor returns a generator.
+        for role in self.getFilteredRoleListFor(ob):
+          self.updateLocalRolesOnDocument(ob)
+          break
 
         # notify workflow after generating local roles, in order to prevent
         # Unauthorized error on transition's condition