aboutsummaryrefslogtreecommitdiff
path: root/engines/wintermute/base/particles/part_force.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'engines/wintermute/base/particles/part_force.cpp')
-rw-r--r--engines/wintermute/base/particles/part_force.cpp9
1 files changed, 8 insertions, 1 deletions
diff --git a/engines/wintermute/base/particles/part_force.cpp b/engines/wintermute/base/particles/part_force.cpp
index ba60e8b41c..7311ea21f6 100644
--- a/engines/wintermute/base/particles/part_force.cpp
+++ b/engines/wintermute/base/particles/part_force.cpp
@@ -48,7 +48,14 @@ PartForce::~PartForce(void) {
//////////////////////////////////////////////////////////////////////////
bool PartForce::persist(BasePersistenceManager *persistMgr) {
- persistMgr->transfer(TMEMBER(_name));
+ if (persistMgr->_saving) {
+ const char *name = getName();
+ persistMgr->transfer(TMEMBER(name));
+ } else {
+ const char *name;
+ persistMgr->transfer(TMEMBER(name));
+ setName(name);
+ }
persistMgr->transfer(TMEMBER(_pos));
persistMgr->transfer(TMEMBER(_direction));
persistMgr->transfer(TMEMBER_INT(_type));