diff --git a/src/OpenFOAM/db/Time/Time.C b/src/OpenFOAM/db/Time/Time.C
index 20fca2c4dbea7ff8eb8836600be3ff375697c239..6ab3baa700d2a075f259a7755b7d8982b4a07485 100644
--- a/src/OpenFOAM/db/Time/Time.C
+++ b/src/OpenFOAM/db/Time/Time.C
@@ -170,7 +170,7 @@ void Foam::Time::setControls()
 
     readDict();
     deltaTSave_ = deltaT_;
-    deltaT0_ = deltaTSave_;
+    deltaT0_ = deltaT_;
 
     if (Pstream::parRun())
     {
@@ -203,11 +203,14 @@ void Foam::Time::setControls()
         )
     );
 
-    if (timeDict.readIfPresent("deltaT", deltaTSave_))
+    if (timeDict.readIfPresent("deltaT", deltaT_))
     {
-        deltaT0_ = deltaTSave_;
+        deltaTSave_ = deltaT_;
+        deltaT0_ = deltaT_;
     }
 
+    timeDict.readIfPresent("deltaT0", deltaT0_);
+
     if (timeDict.readIfPresent("index", startTimeIndex_))
     {
         timeIndex_ = startTimeIndex_;