summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkrzys-h <krzys_h@interia.pl>2014-10-27 21:49:03 +0100
committerkrzys-h <krzys_h@interia.pl>2014-10-27 21:49:03 +0100
commit11854dc89ed5925d39634de12048cee9e0f7547a (patch)
tree424abd795bf6217b01a10de3891ab3bba3fd5143
parentd6e88a07b08585d6a6f151d34a07d8bca78711ea (diff)
downloadcolobot-11854dc89ed5925d39634de12048cee9e0f7547a.tar.gz
colobot-11854dc89ed5925d39634de12048cee9e0f7547a.tar.bz2
colobot-11854dc89ed5925d39634de12048cee9e0f7547a.zip
Fixed script saving (issue #348)
-rw-r--r--src/object/robotmain.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/object/robotmain.cpp b/src/object/robotmain.cpp
index 012b08a..adbe81d 100644
--- a/src/object/robotmain.cpp
+++ b/src/object/robotmain.cpp
@@ -5465,9 +5465,12 @@ void CRobotMain::LoadFileScript(CObject *obj, const char* filename, int objRank,
ObjectType type = obj->GetType();
if (type == OBJECT_HUMAN) return;
-
+
+ std::string fnstr = filename;
+ boost::replace_all(fnstr, m_dialog->GetSavegameDir(), m_dialog->GetPHYSFSSavegameDir()); //TODO: Refactor to get physfs path here
+ //TODO: Refactor to std::string
char fn[MAX_FNAME];
- strcpy(fn, filename);
+ strcpy(fn, fnstr.c_str());
char* ldir = SearchLastDir(fn);
if (ldir == 0) return;
@@ -5534,8 +5537,11 @@ void CRobotMain::SaveFileScript(CObject *obj, const char* filename, int objRank)
ObjectType type = obj->GetType();
if (type == OBJECT_HUMAN) return;
+ std::string fnstr = filename;
+ boost::replace_all(fnstr, m_dialog->GetSavegameDir(), m_dialog->GetPHYSFSSavegameDir()); //TODO: Refactor to get physfs path here
+ //TODO: Refactor to std::string
char fn[MAX_FNAME];
- strcpy(fn, filename);
+ strcpy(fn, fnstr.c_str());
char* ldir = SearchLastDir(fn);
if (ldir == 0) return;