diff --git a/src/OpenFOAM/db/Time/TimeIO.C b/src/OpenFOAM/db/Time/TimeIO.C
index fac912632902caab3a1379fbe4ad80b9a783d4cd..ac32d894b0d213ee8e5cf5e2c519baf307fef099 100644
--- a/src/OpenFOAM/db/Time/TimeIO.C
+++ b/src/OpenFOAM/db/Time/TimeIO.C
@@ -655,7 +655,11 @@ bool Foam::Time::writeObject
             // Does the writeTime trigger purging?
             if (writeTime_ && purgeWrite_)
             {
-                if (previousWriteTimes_.top() != timeName())
+                if
+                (
+                    previousWriteTimes_.empty()
+                 || previousWriteTimes_.top() != timeName()
+                )
                 {
                     previousWriteTimes_.push(timeName());
                 }