diff --git a/product/ERP5Type/Core/Folder.py b/product/ERP5Type/Core/Folder.py
index a6569ac65c6cfed08f7909e2516c3d5ec39ae22b..ea6c315478116a8a63cd0e42b22fa950b5181e78 100644
--- a/product/ERP5Type/Core/Folder.py
+++ b/product/ERP5Type/Core/Folder.py
@@ -1424,15 +1424,17 @@ class Folder(CopyContainer, CMFBTreeFolder, CMFHBTreeFolder, Base, FolderMixIn,
   def contentValues(self, *args, **kw):
     # Returns a list of documents contained in this folder.
     # ( no docstring to prevent publishing )
-    filter_kw = kw.pop('filter', None) or {}
     portal_type_id_list = self._getTypesTool().objectIds()
+    filter_kw = kw.pop('filter', None) or {}
+    portal_type = kw.pop('portal_type', None)
     if 'portal_type' in filter_kw:
       portal_type = filter_kw.pop('portal_type')
+    if portal_type is None:
+      kw['portal_type'] = portal_type_id_list
+    else:
       if isinstance(portal_type, str):
         portal_type = portal_type,
       kw['portal_type'] = [x for x in portal_type if x in portal_type_id_list]
-    elif 'portal_type' not in kw:
-      kw['portal_type'] = portal_type_id_list
     object_list = self.objectValues(*args, **kw)
     if filter_kw:
       object_list = filter(ContentFilter(**filter_kw), object_list)