diff --git a/common/python/nomadcore/md_data_access/MDDataAccess.py b/common/python/nomadcore/md_data_access/MDDataAccess.py
index 1ae94c5eb3126d33e3a8940567c2f38ad67fdcd4..4e14ba8f6e965216e02233974a21827de145b96f 100644
--- a/common/python/nomadcore/md_data_access/MDDataAccess.py
+++ b/common/python/nomadcore/md_data_access/MDDataAccess.py
@@ -4030,7 +4030,7 @@ class MDDataAccess(object):
                     loader = mdt_FormatRegistry.loaders[trajformat]
                 except KeyError:
                     return
-                t = loader(filename)
+                t = loader(trajfile)
                 for i in range(0, len(t), chunk):
                     positions = t[i:i+chunk]
                     for pos in positions:
@@ -4188,7 +4188,7 @@ class MDDataAccess(object):
                     trajformat = self.trajectoryFileHandler(filename, fileformatlist, interfacelist)
                 if 'thermostats' in parser_ui.fileDict[fileItem].infoPurpose:
                     thermoformat = self.thermoFileHandler(filename, fileformatlist, interfacelist)
-        if self.topohandler is not None:
+        if self.topohandler is not None and self.topocode is not None:
             parser_ui.topology = self.set_TopologyData()
         if self.inputpositions is not None:
             parser_ui.inputcoords = self.set_InputData()
@@ -4231,7 +4231,7 @@ class MDDataAccess(object):
                         self.load_topology()
                         if self.topohandler is not None:
                             break
-        if self.topohandler is not None:
+        if self.topohandler is not None and self.topocode is not None:
             parser_ui.topology = self.set_TopologyData()
 
     def initializeTrajectoryFileHandlers(self, parser_ui):