From 9752c75f407c8bd82006222433fcc3618b9e82bb Mon Sep 17 00:00:00 2001 From: David Corrales Date: Sun, 29 Jul 2007 01:36:59 +0000 Subject: Add a removeSavefile() to the default savefile manager based on the new Common::File::remove(). svn-id: r28282 --- backends/saves/default/default-saves.cpp | 12 +++++++++--- backends/saves/default/default-saves.h | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'backends/saves') diff --git a/backends/saves/default/default-saves.cpp b/backends/saves/default/default-saves.cpp index f41455be3f..299c528e46 100644 --- a/backends/saves/default/default-saves.cpp +++ b/backends/saves/default/default-saves.cpp @@ -29,7 +29,7 @@ #include "common/savefile.h" #include "common/util.h" #include "common/fs.h" -#include "common/str.h" +#include "common/file.h" #include "backends/saves/default/default-saves.h" #include "backends/saves/compressed/compressed-saves.h" @@ -180,10 +180,10 @@ Common::OutSaveFile *DefaultSaveFileManager::openForSaving(const char *filename) break; } } else { - // So stat() succeeded. But is the path actually pointing to a - // directory? + // So stat() succeeded. But is the path actually pointing to a directory? if (!S_ISDIR(sb.st_mode)) { setError(SFM_DIR_NOTDIR, Common::String("The given savepath is not a directory")); + return 0; } } @@ -215,6 +215,12 @@ Common::InSaveFile *DefaultSaveFileManager::openForLoading(const char *filename) return wrapInSaveFile(sf); } +bool DefaultSaveFileManager::removeSavefile(const char *filename) { + Common::File file; + FilesystemNode savePath(filename); + return file.remove(savePath); +} + Common::StringList DefaultSaveFileManager::listSavefiles(const char *regex) { FilesystemNode savePath(getSavePath()); FSList savefiles; diff --git a/backends/saves/default/default-saves.h b/backends/saves/default/default-saves.h index 4b525cabc8..2baddd1335 100644 --- a/backends/saves/default/default-saves.h +++ b/backends/saves/default/default-saves.h @@ -34,6 +34,7 @@ class DefaultSaveFileManager : public Common::SaveFileManager { public: virtual Common::OutSaveFile *openForSaving(const char *filename); virtual Common::InSaveFile *openForLoading(const char *filename); + virtual bool removeSavefile(const char *filename); virtual Common::StringList listSavefiles(const char *regex); }; -- cgit v1.2.3