diff --git a/src/gui/peptide_detail_view/peptidewindow.cpp b/src/gui/peptide_detail_view/peptidewindow.cpp
index 773ad922198905a19f3568a4e09f21626d3d0fcf..d34655ab3265d1e5de20f4ead817e565984a7902 100644
--- a/src/gui/peptide_detail_view/peptidewindow.cpp
+++ b/src/gui/peptide_detail_view/peptidewindow.cpp
@@ -47,35 +47,50 @@ SpectrumSpLoaderThread::doLoadSpectrumSp(PeptideEvidence *p_peptide_evidence)
     settings.value("timstof/spectrum_load_method", "mgf").toString();
   try
     {
-      if(spectrum_load_method == "mgf")
+      QString tdf_file =
+        QFileInfo(p_peptide_evidence->getIdentificationDataSource()
+                    ->getMsRunSp()
+                    ->getFileName())
+          .absoluteDir()
+          .absolutePath() +
+        "/analysis.tdf";
+
+      if(QFileInfo(tdf_file).exists())
         {
-          spectrum =
-            p_peptide_evidence->getIdentificationDataSource()
-              ->getMassSpectrumCstSPtr(p_peptide_evidence->getScanNumber());
+          if(spectrum_load_method == "mgf")
+            {
+              spectrum =
+                p_peptide_evidence->getIdentificationDataSource()
+                  ->getMassSpectrumCstSPtr(p_peptide_evidence->getScanNumber());
+            }
+          else
+            {
+              std::vector<double> values;
+              values.push_back(p_peptide_evidence->getCharge());
+              values.push_back(p_peptide_evidence->getExperimentalMz());
+              values.push_back(p_peptide_evidence->getRetentionTime());
+              values.push_back(0.99); // TODO
+
+              QString tdf_file =
+                QFileInfo(p_peptide_evidence->getIdentificationDataSource()
+                            ->getMsRunSp()
+                            ->getFileName())
+                  .absoluteDir()
+                  .absolutePath() +
+                "/analysis.tdf";
+              spectrum =
+                p_peptide_evidence->getIdentificationDataSource()
+                  ->getMassSpectrumCstSPtrMgfToTdf(
+                    p_peptide_evidence->getScanNumber(), tdf_file, values);
+            }
         }
       else
         {
-          qDebug() << p_peptide_evidence->getCharge()
-                   << p_peptide_evidence->getExperimentalMz()
-                   << p_peptide_evidence->getRetentionTime();
-
-          std::vector<double> values;
-          values.push_back(p_peptide_evidence->getCharge());
-          values.push_back(p_peptide_evidence->getExperimentalMz());
-          values.push_back(p_peptide_evidence->getRetentionTime());
-          values.push_back(0.99);
-
-          QString tdf_file =
-            QFileInfo(p_peptide_evidence->getIdentificationDataSource()
-                        ->getMsRunSp()
-                        ->getFileName())
-              .absoluteDir()
-              .absolutePath() +
-            "/analysis.tdf";
-          spectrum = p_peptide_evidence->getIdentificationDataSource()
-                       ->getMassSpectrumCstSPtrMgfToTdf(
-                         p_peptide_evidence->getScanNumber(), tdf_file, values);
+          spectrum =
+            p_peptide_evidence->getIdentificationDataSource()
+              ->getMassSpectrumCstSPtr(p_peptide_evidence->getScanNumber());
         }
+
       emit spectrumSpReady(spectrum, QString(""), QString(""));
     }