aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/saveload.h
diff options
context:
space:
mode:
authorathrxx2011-04-21 20:29:25 +0200
committerathrxx2011-04-21 20:29:25 +0200
commit204644b001d85612742426b5731b8149b0a24f2e (patch)
tree8e19872f056e773335536b5cb6a70d3e3f55f75f /engines/tsage/saveload.h
parentb0008d2d33c394fbba358c08b032c5872e6a909d (diff)
parent44e79c70fa2908e0abdb7c9effa1dd039404a520 (diff)
downloadscummvm-rg350-204644b001d85612742426b5731b8149b0a24f2e.tar.gz
scummvm-rg350-204644b001d85612742426b5731b8149b0a24f2e.tar.bz2
scummvm-rg350-204644b001d85612742426b5731b8149b0a24f2e.zip
Merge branch 'master' of https://github.com/scummvm/scummvm
Diffstat (limited to 'engines/tsage/saveload.h')
-rw-r--r--engines/tsage/saveload.h8
1 files changed, 5 insertions, 3 deletions
diff --git a/engines/tsage/saveload.h b/engines/tsage/saveload.h
index 945d144ae5..c45271b8fc 100644
--- a/engines/tsage/saveload.h
+++ b/engines/tsage/saveload.h
@@ -54,8 +54,8 @@ struct tSageSavegameHeader {
// FIXME: workaround to supress spurious strict-alias warnings on older GCC
// versions. this should be resolved with the savegame rewrite
#define SYNC_POINTER(x) do { \
- SavedObject *y = (SavedObject *)x; \
- s.syncPointer(&y); \
+ SavedObject **y = (SavedObject **)((void *)&x); \
+ s.syncPointer(y); \
} while (false)
#define SYNC_ENUM(FIELD, TYPE) int v_##FIELD = (int)FIELD; s.syncAsUint16LE(v_##FIELD); \
@@ -176,7 +176,7 @@ typedef SavedObject *(*SavedObjectFactory)(const Common::String &className);
class Saver {
private:
- SynchronisedList<SavedObject *> _objList;
+ Common::List<SavedObject *> _objList;
FunctionList<bool> _saveNotifiers;
FunctionList<bool> _loadNotifiers;
Common::List<SaveListener *> _listeners;
@@ -212,6 +212,8 @@ public:
bool getMacroSaveFlag() const { return _macroSaveFlag; }
bool getMacroRestoreFlag() const { return _macroRestoreFlag; }
int blockIndexOf(SavedObject *p);
+ int getObjectCount() const;
+ void listObjects();
};
extern Saver *_saver;