diff --git a/proof/proof/src/TDataSetManagerFile.cxx b/proof/proof/src/TDataSetManagerFile.cxx
index 2db33e4deba0f4a3e16a12a370d427c90315bae6..0140129a08d90423c8dbb32015d5a73e4effa3a6 100644
--- a/proof/proof/src/TDataSetManagerFile.cxx
+++ b/proof/proof/src/TDataSetManagerFile.cxx
@@ -1588,10 +1588,8 @@ Int_t TDataSetManagerFile::RegisterDataSet(const char *uri,
    uniqueFileList->Add(prevFile);
    while (TFileInfo *obj = (TFileInfo*)nextFile()) {
       // Add entities only once to the temporary list
-      if (prevFile->Compare(obj)) {
+      if (!uniqueFileList->FindObject(obj->GetFirstUrl()->GetUrl()))
          uniqueFileList->Add(obj);
-         prevFile = obj;
-      }
    }
 
    // Clear dataSet and add contents of uniqueFileList needed otherwise