aboutsummaryrefslogtreecommitdiff
path: root/engines/wintermute
diff options
context:
space:
mode:
authorEinar Johan Trøan Sømåen2013-11-05 13:54:25 +0100
committerEinar Johan Trøan Sømåen2013-11-05 13:54:25 +0100
commit237d3d86ecd84fc2084c7739a6ff054e3b0c829b (patch)
treefc5151bfaa1d9ceca42e0fc73e69fed845fba85b /engines/wintermute
parentd07409def7cf63296a11f0cdea3bf5b7e1c3427a (diff)
downloadscummvm-rg350-237d3d86ecd84fc2084c7739a6ff054e3b0c829b.tar.gz
scummvm-rg350-237d3d86ecd84fc2084c7739a6ff054e3b0c829b.tar.bz2
scummvm-rg350-237d3d86ecd84fc2084c7739a6ff054e3b0c829b.zip
WINTERMUTE: Transfer Char* explicitly when saving/loading.
Diffstat (limited to 'engines/wintermute')
-rw-r--r--engines/wintermute/ad/ad_entity.cpp2
-rw-r--r--engines/wintermute/ad/ad_game.cpp12
-rw-r--r--engines/wintermute/ad/ad_item.cpp2
-rw-r--r--engines/wintermute/ad/ad_node_state.cpp8
-rw-r--r--engines/wintermute/ad/ad_object.cpp2
-rw-r--r--engines/wintermute/ad/ad_response.cpp4
-rw-r--r--engines/wintermute/ad/ad_response_box.cpp4
-rw-r--r--engines/wintermute/ad/ad_response_context.cpp2
-rw-r--r--engines/wintermute/ad/ad_scene_state.cpp2
-rw-r--r--engines/wintermute/ad/ad_sentence.cpp8
-rw-r--r--engines/wintermute/ad/ad_talk_def.cpp4
-rw-r--r--engines/wintermute/ad/ad_talk_node.cpp6
-rw-r--r--engines/wintermute/base/base_object.cpp4
-rw-r--r--engines/wintermute/base/base_persistence_manager.cpp2
-rw-r--r--engines/wintermute/base/base_persistence_manager.h2
-rw-r--r--engines/wintermute/base/base_script_holder.cpp4
-rw-r--r--engines/wintermute/base/base_sprite.cpp2
-rw-r--r--engines/wintermute/base/base_sub_frame.cpp2
-rw-r--r--engines/wintermute/base/font/base_font_truetype.cpp2
-rw-r--r--engines/wintermute/base/particles/part_emitter.cpp2
-rw-r--r--engines/wintermute/base/particles/part_particle.cpp2
-rw-r--r--engines/wintermute/base/scriptables/script.cpp4
-rw-r--r--engines/wintermute/base/scriptables/script_ext_file.cpp2
-rw-r--r--engines/wintermute/base/scriptables/script_value.cpp2
-rw-r--r--engines/wintermute/coll_templ.h4
-rw-r--r--engines/wintermute/ui/ui_edit.cpp2
-rw-r--r--engines/wintermute/ui/ui_object.cpp2
27 files changed, 47 insertions, 47 deletions
diff --git a/engines/wintermute/ad/ad_entity.cpp b/engines/wintermute/ad/ad_entity.cpp
index a927c17231..098da49750 100644
--- a/engines/wintermute/ad/ad_entity.cpp
+++ b/engines/wintermute/ad/ad_entity.cpp
@@ -1092,7 +1092,7 @@ void AdEntity::updatePosition() {
bool AdEntity::persist(BasePersistenceManager *persistMgr) {
AdTalkHolder::persist(persistMgr);
- persistMgr->transfer(TMEMBER(_item));
+ persistMgr->transferCharPtr(TMEMBER(_item));
persistMgr->transferPtr(TMEMBER_PTR(_region));
//persistMgr->transfer(TMEMBER(_sprite));
persistMgr->transferSint32(TMEMBER_INT(_subtype));
diff --git a/engines/wintermute/ad/ad_game.cpp b/engines/wintermute/ad/ad_game.cpp
index e06d6cda59..904b8a541c 100644
--- a/engines/wintermute/ad/ad_game.cpp
+++ b/engines/wintermute/ad/ad_game.cpp
@@ -1417,8 +1417,8 @@ bool AdGame::persist(BasePersistenceManager *persistMgr) {
_objects.persist(persistMgr);
- persistMgr->transfer(TMEMBER(_prevSceneName));
- persistMgr->transfer(TMEMBER(_prevSceneFilename));
+ persistMgr->transferCharPtr(TMEMBER(_prevSceneName));
+ persistMgr->transferCharPtr(TMEMBER(_prevSceneFilename));
persistMgr->transferPtr(TMEMBER_PTR(_responseBox));
_responsesBranch.persist(persistMgr);
@@ -1426,7 +1426,7 @@ bool AdGame::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_scene));
_sceneStates.persist(persistMgr);
persistMgr->transferBool(TMEMBER(_scheduledFadeIn));
- persistMgr->transfer(TMEMBER(_scheduledScene));
+ persistMgr->transferCharPtr(TMEMBER(_scheduledScene));
persistMgr->transferPtr(TMEMBER_PTR(_selectedItem));
persistMgr->transferSint32(TMEMBER_INT(_talkSkipButton));
@@ -1435,14 +1435,14 @@ bool AdGame::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_sceneViewport));
persistMgr->transferSint32(TMEMBER_INT(_stateEx));
persistMgr->transferBool(TMEMBER(_initialScene));
- persistMgr->transfer(TMEMBER(_debugStartupScene));
+ persistMgr->transferCharPtr(TMEMBER(_debugStartupScene));
persistMgr->transferPtr(TMEMBER_PTR(_invObject));
persistMgr->transferPtr(TMEMBER_PTR(_inventoryOwner));
persistMgr->transferBool(TMEMBER(_tempDisableSaveState));
_items.persist(persistMgr);
- persistMgr->transfer(TMEMBER(_itemsFile));
+ persistMgr->transferCharPtr(TMEMBER(_itemsFile));
_speechDirs.persist(persistMgr);
persistMgr->transferBool(TMEMBER(_smartItemCursor));
@@ -1451,7 +1451,7 @@ bool AdGame::persist(BasePersistenceManager *persistMgr) {
_initialScene = false;
}
- persistMgr->transfer(TMEMBER(_startupScene));
+ persistMgr->transferCharPtr(TMEMBER(_startupScene));
return STATUS_OK;
diff --git a/engines/wintermute/ad/ad_item.cpp b/engines/wintermute/ad/ad_item.cpp
index c8359addd5..1f19a3eeae 100644
--- a/engines/wintermute/ad/ad_item.cpp
+++ b/engines/wintermute/ad/ad_item.cpp
@@ -793,7 +793,7 @@ bool AdItem::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferSint32(TMEMBER(_amountOffsetX));
persistMgr->transferSint32(TMEMBER(_amountOffsetY));
persistMgr->transferSint32(TMEMBER_INT(_amountAlign));
- persistMgr->transfer(TMEMBER(_amountString));
+ persistMgr->transferCharPtr(TMEMBER(_amountString));
return STATUS_OK;
}
diff --git a/engines/wintermute/ad/ad_node_state.cpp b/engines/wintermute/ad/ad_node_state.cpp
index 8793c40d6b..dd07f23762 100644
--- a/engines/wintermute/ad/ad_node_state.cpp
+++ b/engines/wintermute/ad/ad_node_state.cpp
@@ -96,12 +96,12 @@ bool AdNodeState::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_gameRef));
persistMgr->transferBool(TMEMBER(_active));
- persistMgr->transfer(TMEMBER(_name));
- persistMgr->transfer(TMEMBER(_filename));
- persistMgr->transfer(TMEMBER(_cursor));
+ persistMgr->transferCharPtr(TMEMBER(_name));
+ persistMgr->transferCharPtr(TMEMBER(_filename));
+ persistMgr->transferCharPtr(TMEMBER(_cursor));
persistMgr->transferUint32(TMEMBER(_alphaColor));
for (int i = 0; i < 7; i++) {
- persistMgr->transfer(TMEMBER(_caption[i]));
+ persistMgr->transferCharPtr(TMEMBER(_caption[i]));
}
return STATUS_OK;
diff --git a/engines/wintermute/ad/ad_object.cpp b/engines/wintermute/ad/ad_object.cpp
index fbeacee053..3664e0fd8a 100644
--- a/engines/wintermute/ad/ad_object.cpp
+++ b/engines/wintermute/ad/ad_object.cpp
@@ -1043,7 +1043,7 @@ bool AdObject::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferSint32(TMEMBER_INT(_state));
persistMgr->transferPtr(TMEMBER_PTR(_animSprite));
persistMgr->transferBool(TMEMBER(_sceneIndependent));
- persistMgr->transfer(TMEMBER(_forcedTalkAnimName));
+ persistMgr->transferCharPtr(TMEMBER(_forcedTalkAnimName));
persistMgr->transferBool(TMEMBER(_forcedTalkAnimUsed));
persistMgr->transferPtr(TMEMBER_PTR(_tempSprite2));
persistMgr->transferSint32(TMEMBER_INT(_type));
diff --git a/engines/wintermute/ad/ad_response.cpp b/engines/wintermute/ad/ad_response.cpp
index 8d8f9a15ad..e7b4188de6 100644
--- a/engines/wintermute/ad/ad_response.cpp
+++ b/engines/wintermute/ad/ad_response.cpp
@@ -135,8 +135,8 @@ bool AdResponse::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_iconHover));
persistMgr->transferPtr(TMEMBER_PTR(_iconPressed));
persistMgr->transferSint32(TMEMBER(_iD));
- persistMgr->transfer(TMEMBER(_text));
- persistMgr->transfer(TMEMBER(_textOrig));
+ persistMgr->transferCharPtr(TMEMBER(_text));
+ persistMgr->transferCharPtr(TMEMBER(_textOrig));
persistMgr->transferSint32(TMEMBER_INT(_responseType));
persistMgr->transferPtr(TMEMBER_PTR(_font));
diff --git a/engines/wintermute/ad/ad_response_box.cpp b/engines/wintermute/ad/ad_response_box.cpp
index ea2e223106..f2e986cbdc 100644
--- a/engines/wintermute/ad/ad_response_box.cpp
+++ b/engines/wintermute/ad/ad_response_box.cpp
@@ -584,8 +584,8 @@ bool AdResponseBox::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_font));
persistMgr->transferPtr(TMEMBER_PTR(_fontHover));
persistMgr->transferBool(TMEMBER(_horizontal));
- persistMgr->transfer(TMEMBER(_lastResponseText));
- persistMgr->transfer(TMEMBER(_lastResponseTextOrig));
+ persistMgr->transferCharPtr(TMEMBER(_lastResponseText));
+ persistMgr->transferCharPtr(TMEMBER(_lastResponseTextOrig));
_respButtons.persist(persistMgr);
persistMgr->transferRect32(TMEMBER(_responseArea));
_responses.persist(persistMgr);
diff --git a/engines/wintermute/ad/ad_response_context.cpp b/engines/wintermute/ad/ad_response_context.cpp
index dcafc55166..44b43a6077 100644
--- a/engines/wintermute/ad/ad_response_context.cpp
+++ b/engines/wintermute/ad/ad_response_context.cpp
@@ -50,7 +50,7 @@ AdResponseContext::~AdResponseContext() {
//////////////////////////////////////////////////////////////////////////
bool AdResponseContext::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_gameRef));
- persistMgr->transfer(TMEMBER(_context));
+ persistMgr->transferCharPtr(TMEMBER(_context));
persistMgr->transferSint32(TMEMBER(_id));
return STATUS_OK;
diff --git a/engines/wintermute/ad/ad_scene_state.cpp b/engines/wintermute/ad/ad_scene_state.cpp
index 58cb5f514a..a4218751c3 100644
--- a/engines/wintermute/ad/ad_scene_state.cpp
+++ b/engines/wintermute/ad/ad_scene_state.cpp
@@ -56,7 +56,7 @@ AdSceneState::~AdSceneState() {
//////////////////////////////////////////////////////////////////////////
bool AdSceneState::persist(BasePersistenceManager *persistMgr) {
- persistMgr->transfer(TMEMBER(_filename));
+ persistMgr->transferCharPtr(TMEMBER(_filename));
_nodeStates.persist(persistMgr);
return STATUS_OK;
diff --git a/engines/wintermute/ad/ad_sentence.cpp b/engines/wintermute/ad/ad_sentence.cpp
index 514a6b8631..21ffac5aaf 100644
--- a/engines/wintermute/ad/ad_sentence.cpp
+++ b/engines/wintermute/ad/ad_sentence.cpp
@@ -252,17 +252,17 @@ bool AdSentence::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferSint32(TMEMBER_INT(_align));
persistMgr->transferSint32(TMEMBER(_currentStance));
persistMgr->transferPtr(TMEMBER_PTR(_currentSprite));
- persistMgr->transfer(TMEMBER(_currentSkelAnim));
+ persistMgr->transferCharPtr(TMEMBER(_currentSkelAnim));
persistMgr->transferUint32(TMEMBER(_duration));
persistMgr->transferPtr(TMEMBER_PTR(_font));
persistMgr->transferPoint32(TMEMBER(_pos));
persistMgr->transferPtr(TMEMBER_PTR(_sound));
persistMgr->transferBool(TMEMBER(_soundStarted));
- persistMgr->transfer(TMEMBER(_stances));
+ persistMgr->transferCharPtr(TMEMBER(_stances));
persistMgr->transferUint32(TMEMBER(_startTime));
persistMgr->transferPtr(TMEMBER_PTR(_talkDef));
- persistMgr->transfer(TMEMBER(_tempStance));
- persistMgr->transfer(TMEMBER(_text));
+ persistMgr->transferCharPtr(TMEMBER(_tempStance));
+ persistMgr->transferCharPtr(TMEMBER(_text));
persistMgr->transferSint32(TMEMBER(_width));
persistMgr->transferBool(TMEMBER(_fixedPos));
persistMgr->transferBool(TMEMBER(_freezable));
diff --git a/engines/wintermute/ad/ad_talk_def.cpp b/engines/wintermute/ad/ad_talk_def.cpp
index 1fdeed418f..22e3d7b4cc 100644
--- a/engines/wintermute/ad/ad_talk_def.cpp
+++ b/engines/wintermute/ad/ad_talk_def.cpp
@@ -209,9 +209,9 @@ bool AdTalkDef::persist(BasePersistenceManager *persistMgr) {
BaseObject::persist(persistMgr);
persistMgr->transferPtr(TMEMBER_PTR(_defaultSprite));
- persistMgr->transfer(TMEMBER(_defaultSpriteFilename));
+ persistMgr->transferCharPtr(TMEMBER(_defaultSpriteFilename));
persistMgr->transferPtr(TMEMBER_PTR(_defaultSpriteSet));
- persistMgr->transfer(TMEMBER(_defaultSpriteSetFilename));
+ persistMgr->transferCharPtr(TMEMBER(_defaultSpriteSetFilename));
_nodes.persist(persistMgr);
diff --git a/engines/wintermute/ad/ad_talk_node.cpp b/engines/wintermute/ad/ad_talk_node.cpp
index 2afaaec2b4..6c0d2e1f06 100644
--- a/engines/wintermute/ad/ad_talk_node.cpp
+++ b/engines/wintermute/ad/ad_talk_node.cpp
@@ -191,14 +191,14 @@ bool AdTalkNode::loadBuffer(char *buffer, bool complete) {
//////////////////////////////////////////////////////////////////////////
bool AdTalkNode::persist(BasePersistenceManager *persistMgr) {
- persistMgr->transfer(TMEMBER(_comment));
+ persistMgr->transferCharPtr(TMEMBER(_comment));
persistMgr->transferUint32(TMEMBER(_startTime));
persistMgr->transferUint32(TMEMBER(_endTime));
persistMgr->transferBool(TMEMBER(_playToEnd));
persistMgr->transferPtr(TMEMBER_PTR(_sprite));
- persistMgr->transfer(TMEMBER(_spriteFilename));
+ persistMgr->transferCharPtr(TMEMBER(_spriteFilename));
persistMgr->transferPtr(TMEMBER_PTR(_spriteSet));
- persistMgr->transfer(TMEMBER(_spriteSetFilename));
+ persistMgr->transferCharPtr(TMEMBER(_spriteSetFilename));
return STATUS_OK;
}
diff --git a/engines/wintermute/base/base_object.cpp b/engines/wintermute/base/base_object.cpp
index 2e0c612da0..540c7dd164 100644
--- a/engines/wintermute/base/base_object.cpp
+++ b/engines/wintermute/base/base_object.cpp
@@ -953,7 +953,7 @@ bool BaseObject::persist(BasePersistenceManager *persistMgr) {
BaseScriptHolder::persist(persistMgr);
for (int i = 0; i < 7; i++) {
- persistMgr->transfer(TMEMBER(_caption[i]));
+ persistMgr->transferCharPtr(TMEMBER(_caption[i]));
}
persistMgr->transferPtr(TMEMBER_PTR(_activeCursor));
persistMgr->transferUint32(TMEMBER(_alphaColor));
@@ -979,7 +979,7 @@ bool BaseObject::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferBool(TMEMBER(_rectSet));
persistMgr->transferBool(TMEMBER(_registrable));
persistMgr->transferBool(TMEMBER(_shadowable));
- persistMgr->transfer(TMEMBER(_soundEvent));
+ persistMgr->transferCharPtr(TMEMBER(_soundEvent));
persistMgr->transferBool(TMEMBER(_zoomable));
persistMgr->transferFloat(TMEMBER(_scaleX));
diff --git a/engines/wintermute/base/base_persistence_manager.cpp b/engines/wintermute/base/base_persistence_manager.cpp
index eb2bffeba5..b9f52b286d 100644
--- a/engines/wintermute/base/base_persistence_manager.cpp
+++ b/engines/wintermute/base/base_persistence_manager.cpp
@@ -682,7 +682,7 @@ bool BasePersistenceManager::transferDouble(const char *name, double *val) {
//////////////////////////////////////////////////////////////////////////
// char*
-bool BasePersistenceManager::transfer(const char *name, char **val) {
+bool BasePersistenceManager::transferCharPtr(const char *name, char **val) {
if (_saving) {
putString(*val);
return STATUS_OK;
diff --git a/engines/wintermute/base/base_persistence_manager.h b/engines/wintermute/base/base_persistence_manager.h
index aba4776a31..2735e2bd01 100644
--- a/engines/wintermute/base/base_persistence_manager.h
+++ b/engines/wintermute/base/base_persistence_manager.h
@@ -83,7 +83,7 @@ public:
bool transferRect32(const char *name, Rect32 *val);
bool transferPoint32(const char *name, Point32 *val);
bool transfer(const char *name, const char **val);
- bool transfer(const char *name, char **val);
+ bool transferCharPtr(const char *name, char **val);
bool transfer(const char *name, Common::String *val);
bool transferVector2(const char *name, Vector2 *val);
bool transfer(const char *name, AnsiStringArray &Val);
diff --git a/engines/wintermute/base/base_script_holder.cpp b/engines/wintermute/base/base_script_holder.cpp
index 2e21b3e8aa..d59aac44c5 100644
--- a/engines/wintermute/base/base_script_holder.cpp
+++ b/engines/wintermute/base/base_script_holder.cpp
@@ -280,14 +280,14 @@ bool BaseScriptHolder::saveAsText(BaseDynamicBuffer *buffer, int indent) {
bool BaseScriptHolder::persist(BasePersistenceManager *persistMgr) {
BaseScriptable::persist(persistMgr);
- persistMgr->transfer(TMEMBER(_filename));
+ persistMgr->transferCharPtr(TMEMBER(_filename));
persistMgr->transferBool(TMEMBER(_freezable));
if (persistMgr->getIsSaving()) {
const char *name = getName();
persistMgr->transfer(TMEMBER(name));
} else {
char *name;
- persistMgr->transfer(TMEMBER(name));
+ persistMgr->transferCharPtr(TMEMBER(name));
setName(name);
delete[] name;
}
diff --git a/engines/wintermute/base/base_sprite.cpp b/engines/wintermute/base/base_sprite.cpp
index c8e0d8714a..b1fcb42dcc 100644
--- a/engines/wintermute/base/base_sprite.cpp
+++ b/engines/wintermute/base/base_sprite.cpp
@@ -527,7 +527,7 @@ bool BaseSprite::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferSint32(TMEMBER(_currentFrame));
persistMgr->transferBool(TMEMBER(_editorAllFrames));
persistMgr->transferSint32(TMEMBER(_editorBgAlpha));
- persistMgr->transfer(TMEMBER(_editorBgFile));
+ persistMgr->transferCharPtr(TMEMBER(_editorBgFile));
persistMgr->transferSint32(TMEMBER(_editorBgOffsetX));
persistMgr->transferSint32(TMEMBER(_editorBgOffsetY));
persistMgr->transferBool(TMEMBER(_editorMuted));
diff --git a/engines/wintermute/base/base_sub_frame.cpp b/engines/wintermute/base/base_sub_frame.cpp
index 5d78dfa456..38eebb067b 100644
--- a/engines/wintermute/base/base_sub_frame.cpp
+++ b/engines/wintermute/base/base_sub_frame.cpp
@@ -394,7 +394,7 @@ bool BaseSubFrame::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferRect32(TMEMBER(_rect));
persistMgr->transferBool(TMEMBER(_wantsDefaultRect));
- persistMgr->transfer(TMEMBER(_surfaceFilename));
+ persistMgr->transferCharPtr(TMEMBER(_surfaceFilename));
persistMgr->transferBool(TMEMBER(_cKDefault));
persistMgr->transferByte(TMEMBER(_cKRed));
persistMgr->transferByte(TMEMBER(_cKGreen));
diff --git a/engines/wintermute/base/font/base_font_truetype.cpp b/engines/wintermute/base/font/base_font_truetype.cpp
index ac975883a0..55481c7c03 100644
--- a/engines/wintermute/base/font/base_font_truetype.cpp
+++ b/engines/wintermute/base/font/base_font_truetype.cpp
@@ -525,7 +525,7 @@ bool BaseFontTT::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferBool(TMEMBER(_isUnderline));
persistMgr->transferBool(TMEMBER(_isStriked));
persistMgr->transferSint32(TMEMBER(_fontHeight));
- persistMgr->transfer(TMEMBER(_fontFile));
+ persistMgr->transferCharPtr(TMEMBER(_fontFile));
// persist layers
diff --git a/engines/wintermute/base/particles/part_emitter.cpp b/engines/wintermute/base/particles/part_emitter.cpp
index 73f98d15d9..061352b60f 100644
--- a/engines/wintermute/base/particles/part_emitter.cpp
+++ b/engines/wintermute/base/particles/part_emitter.cpp
@@ -1210,7 +1210,7 @@ bool PartEmitter::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferSint32(TMEMBER_INT(_maxBatches));
persistMgr->transferSint32(TMEMBER_INT(_batchesGenerated));
- persistMgr->transfer(TMEMBER(_emitEvent));
+ persistMgr->transferCharPtr(TMEMBER(_emitEvent));
persistMgr->transferPtr(TMEMBER_PTR(_owner));
diff --git a/engines/wintermute/base/particles/part_particle.cpp b/engines/wintermute/base/particles/part_particle.cpp
index 7c38f5477b..5ba1a70240 100644
--- a/engines/wintermute/base/particles/part_particle.cpp
+++ b/engines/wintermute/base/particles/part_particle.cpp
@@ -255,7 +255,7 @@ bool PartParticle::persist(BasePersistenceManager *persistMgr) {
persistMgr->transfer(TMEMBER(filename));
} else {
char *filename;
- persistMgr->transfer(TMEMBER(filename));
+ persistMgr->transferCharPtr(TMEMBER(filename));
SystemClassRegistry::getInstance()->_disabled = true;
setSprite(filename);
SystemClassRegistry::getInstance()->_disabled = false;
diff --git a/engines/wintermute/base/scriptables/script.cpp b/engines/wintermute/base/scriptables/script.cpp
index ebe9758c49..5e4ae3ea95 100644
--- a/engines/wintermute/base/scriptables/script.cpp
+++ b/engines/wintermute/base/scriptables/script.cpp
@@ -1272,7 +1272,7 @@ bool ScScript::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_callStack));
persistMgr->transferSint32(TMEMBER(_currentLine));
persistMgr->transferPtr(TMEMBER_PTR(_engine));
- persistMgr->transfer(TMEMBER(_filename));
+ persistMgr->transferCharPtr(TMEMBER(_filename));
persistMgr->transferBool(TMEMBER(_freezable));
persistMgr->transferPtr(TMEMBER_PTR(_globals));
persistMgr->transferUint32(TMEMBER(_iP));
@@ -1284,7 +1284,7 @@ bool ScScript::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferPtr(TMEMBER_PTR(_owner));
persistMgr->transferPtr(TMEMBER_PTR(_reg1));
persistMgr->transferBool(TMEMBER(_thread));
- persistMgr->transfer(TMEMBER(_threadEvent));
+ persistMgr->transferCharPtr(TMEMBER(_threadEvent));
persistMgr->transferPtr(TMEMBER_PTR(_thisStack));
persistMgr->transferUint32(TMEMBER(_timeSlice));
persistMgr->transferPtr(TMEMBER_PTR(_waitObject));
diff --git a/engines/wintermute/base/scriptables/script_ext_file.cpp b/engines/wintermute/base/scriptables/script_ext_file.cpp
index cb1648608b..dcd4f01f7c 100644
--- a/engines/wintermute/base/scriptables/script_ext_file.cpp
+++ b/engines/wintermute/base/scriptables/script_ext_file.cpp
@@ -766,7 +766,7 @@ bool SXFile::persist(BasePersistenceManager *persistMgr) {
BaseScriptable::persist(persistMgr);
- persistMgr->transfer(TMEMBER(_filename));
+ persistMgr->transferCharPtr(TMEMBER(_filename));
persistMgr->transferSint32(TMEMBER(_mode));
persistMgr->transferBool(TMEMBER(_textMode));
diff --git a/engines/wintermute/base/scriptables/script_value.cpp b/engines/wintermute/base/scriptables/script_value.cpp
index 94e66fccb1..e0c8609b0f 100644
--- a/engines/wintermute/base/scriptables/script_value.cpp
+++ b/engines/wintermute/base/scriptables/script_value.cpp
@@ -825,7 +825,7 @@ bool ScValue::persist(BasePersistenceManager *persistMgr) {
}
persistMgr->transferPtr(TMEMBER_PTR(_valRef));
- persistMgr->transfer(TMEMBER(_valString));
+ persistMgr->transferCharPtr(TMEMBER(_valString));
if (!persistMgr->getIsSaving() && !persistMgr->checkVersion(1,2,2)) {
// Savegames prior to 1.2.2 stored empty strings as NULL.
diff --git a/engines/wintermute/coll_templ.h b/engines/wintermute/coll_templ.h
index d688fa06d0..552cd4a343 100644
--- a/engines/wintermute/coll_templ.h
+++ b/engines/wintermute/coll_templ.h
@@ -97,14 +97,14 @@ class BaseArray<char *> : public BaseArrayBase<char *> {
Common::Array<char *>::const_iterator it = Common::Array<char *>::begin();
for (; it != Common::Array<char *>::end(); ++it) {
char * obj = *it;
- persistMgr->transfer("", &obj);
+ persistMgr->transferCharPtr("", &obj);
}
} else {
Common::Array<char *>::clear();
persistMgr->transferSint32("ArraySize", &j);
for (int i = 0; i < j; i++) {
char * obj = nullptr;
- persistMgr->transfer("", &obj);
+ persistMgr->transferCharPtr("", &obj);
add(obj);
}
}
diff --git a/engines/wintermute/ui/ui_edit.cpp b/engines/wintermute/ui/ui_edit.cpp
index 8df33f1382..1f224c79c8 100644
--- a/engines/wintermute/ui/ui_edit.cpp
+++ b/engines/wintermute/ui/ui_edit.cpp
@@ -933,7 +933,7 @@ bool UIEdit::persist(BasePersistenceManager *persistMgr) {
UIObject::persist(persistMgr);
persistMgr->transferUint32(TMEMBER(_cursorBlinkRate));
- persistMgr->transfer(TMEMBER(_cursorChar));
+ persistMgr->transferCharPtr(TMEMBER(_cursorChar));
persistMgr->transferPtr(TMEMBER_PTR(_fontSelected));
persistMgr->transferSint32(TMEMBER(_frameWidth));
persistMgr->transferSint32(TMEMBER(_maxLength));
diff --git a/engines/wintermute/ui/ui_object.cpp b/engines/wintermute/ui/ui_object.cpp
index 27fc91c03e..c04c7cbd28 100644
--- a/engines/wintermute/ui/ui_object.cpp
+++ b/engines/wintermute/ui/ui_object.cpp
@@ -635,7 +635,7 @@ bool UIObject::persist(BasePersistenceManager *persistMgr) {
persistMgr->transferBool(TMEMBER(_parentNotify));
persistMgr->transferBool(TMEMBER(_sharedFonts));
persistMgr->transferBool(TMEMBER(_sharedImages));
- persistMgr->transfer(TMEMBER(_text));
+ persistMgr->transferCharPtr(TMEMBER(_text));
persistMgr->transferSint32(TMEMBER_INT(_type));
persistMgr->transferBool(TMEMBER(_visible));
persistMgr->transferSint32(TMEMBER(_width));