From 9ecf547c45d74755e8a11c28fd8d6c509bf59326 Mon Sep 17 00:00:00 2001 From: tradke Date: Tue, 6 Jun 2006 17:31:21 +0000 Subject: Fix removal of recovery checkpoint: if IO::recover_and_remove is set, the recovery file will be removed only after IO::checkpoint_keep successful checkpoints have been written. git-svn-id: http://svn.cactuscode.org/arrangements/CactusPUGHIO/IOFlexIO/trunk@344 ebee0441-1374-4afa-a3b5-247f3ba15b9a --- src/RecoverGH.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) (limited to 'src') diff --git a/src/RecoverGH.c b/src/RecoverGH.c index aa1f4dd..2720228 100644 --- a/src/RecoverGH.c +++ b/src/RecoverGH.c @@ -183,14 +183,12 @@ int IOFlexIO_Recover (cGH *GH, const char *basefilename, int called_from) { if (CCTK_Equals (verbose, "full")) { - CCTK_VInfo (CCTK_THORNSTRING, "Removing checkpoint file '%s' after " - "successful recovery", file.filename); - } - if (remove (file.filename) < 0) - { - CCTK_VWarn (1, __LINE__, __FILE__, CCTK_THORNSTRING, - "Failed to remove checkpoint file '%s'", file.filename); + CCTK_VInfo (CCTK_THORNSTRING, "Old checkpoint file '%s' will be removed" + " after next IO::checkpoint_keep " + "successful checkpoints", file.filename); } + myGH->cp_filenames[myGH->cp_fileindex] = strdup (file.filename); + myGH->cp_fileindex = (myGH->cp_fileindex+1) % checkpoint_keep; } } -- cgit v1.2.3