diff --git a/dumux/common/timeloop.hh b/dumux/common/timeloop.hh
index 5d91a3865ed30f046a1c19b2027a0de3dd35e041..d11e43ea86197f2ec94a457ce88cf5c309d2f2ed 100644
--- a/dumux/common/timeloop.hh
+++ b/dumux/common/timeloop.hh
@@ -281,8 +281,7 @@ public:
      */
     bool finished() const
     {
-        using std::abs;
-        return finished_ || abs(time_-endTime_)/endTime_ < 1e-14;
+        return finished_ || endTime_-time_ < 1e-10*time_;
     }
 
     /*!
@@ -291,8 +290,7 @@ public:
      */
     bool willBeFinished() const
     {
-        using std::abs;
-        return finished_ || abs(time_+timeStepSize_-endTime_)/endTime_ < 1e-14;
+        return finished() || endTime_-time_-timeStepSize_ < 1e-10*timeStepSize_;
     }
 
     /*!