aboutsummaryrefslogtreecommitdiff
path: root/common/savefile.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/savefile.h')
-rw-r--r--common/savefile.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/common/savefile.h b/common/savefile.h
index cacb0bfaff..1e48bafdfd 100644
--- a/common/savefile.h
+++ b/common/savefile.h
@@ -41,7 +41,20 @@ class InSaveFile : public SeekableReadStream {};
* That typically means "save games", but also includes things like the
* IQ points in Indy3.
*/
-class OutSaveFile : public WriteStream {};
+class OutSaveFile : public WriteStream {
+public:
+ /**
+ * Close this savefile, to be called right before destruction of this
+ * savefile. The idea is that this ways, I/O errors that occur
+ * during closing/flushing of the file can still be handled by the
+ * game engine.
+ *
+ * By default, this just flushes the stream.
+ */
+ virtual void finalize() {
+ flush();
+ }
+};
/**
* Convenience intermediate class, to be removed.