diff --git a/reco/detectors/sts/unpack/CbmStsUnpackAlgo.cxx b/reco/detectors/sts/unpack/CbmStsUnpackAlgo.cxx
index 1b81a52c3d2cf82ab0d992b61842b3a6b33f5c85..949ac2d867b3f89b379ee969257708393c2a778d 100644
--- a/reco/detectors/sts/unpack/CbmStsUnpackAlgo.cxx
+++ b/reco/detectors/sts/unpack/CbmStsUnpackAlgo.cxx
@@ -509,7 +509,7 @@ void CbmStsUnpackAlgo::processHitInfo(const stsxyter::Message& mess)
       double dTimeInNs         = tsreltime - fSystemTimeOffset;
 
       // Time-Walk correction or Asic-byAsic offsetting, depending on availability
-      if (fbUseTimeWalkCorrection == true) {
+      if (fbUseTimeWalkCorrection == true && fWalkLookup.end() != fWalkLookup.find(fviFebAddress[uFebIdx])) {
         dTimeInNs += fWalkLookup[fviFebAddress[uFebIdx]][uChanInMod / fNrChsPerAsic][usRawAdc];
       }
       else if (uAsicIdx < fvdTimeOffsetNsAsics.size()) {
diff --git a/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx b/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
index d8b0ad0f1bf2819d079edfc3119171079a5857f0..b1d57860efd15e61612b7a8576ae94f1f1c66fd7 100644
--- a/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
+++ b/reco/detectors/sts/unpack/CbmStsUnpackConfig.cxx
@@ -37,7 +37,7 @@ void CbmStsUnpackConfig::InitAlgo()
   fAlgo->SetAsicTimeOffsetVec(fvdTimeOffsetNsAsics);
 
   // Set Time Walk Correction map
-  fAlgo->SetWalkMap(fWalkMap);
+  if (!fWalkMap.empty()) { fAlgo->SetWalkMap(fWalkMap); }
 
   // Set the flags for duplicate digis rejections
   fAlgo->SetDuplicatesRejection(fbRejectDuplicateDigis, fbDupliWithoutAdc);