diff options
author | krzys-h <krzys_h@interia.pl> | 2014-07-24 23:38:13 +0200 |
---|---|---|
committer | krzys-h <krzys_h@interia.pl> | 2014-07-24 23:38:13 +0200 |
commit | 9a3cd67c3bb2f7d0d4b83f6a5ac8bbcfedf4207b (patch) | |
tree | fd6401e9192541dc59f6f8d2cb47b9e898974cb3 /src/common/profile.cpp | |
parent | 17041e718b35b766df099dfaeaf4e7cc3cc63fa6 (diff) | |
download | colobot-9a3cd67c3bb2f7d0d4b83f6a5ac8bbcfedf4207b.tar.gz colobot-9a3cd67c3bb2f7d0d4b83f6a5ac8bbcfedf4207b.tar.bz2 colobot-9a3cd67c3bb2f7d0d4b83f6a5ac8bbcfedf4207b.zip |
Saving colobot.ini through physfs
Diffstat (limited to 'src/common/profile.cpp')
-rw-r--r-- | src/common/profile.cpp | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/src/common/profile.cpp b/src/common/profile.cpp index ee3e873..9947769 100644 --- a/src/common/profile.cpp +++ b/src/common/profile.cpp @@ -18,6 +18,8 @@ #include "common/profile.h" #include "common/logger.h" +#include "common/resources/inputstream.h" +#include "common/resources/outputstream.h" #include "app/system.h" @@ -47,11 +49,15 @@ bool CProfile::InitCurrentDirectory() { try { - #if DEV_BUILD - bp::ini_parser::read_ini("colobot.ini", m_propertyTree); - #else - bp::ini_parser::read_ini(GetSystemUtils()->GetProfileFileLocation(), m_propertyTree); - #endif + CInputStream stream; + stream.open("colobot.ini"); + if(stream.is_open()) { + bp::ini_parser::read_ini(stream, m_propertyTree); + } else { + GetLogger()->Error("Error on parsing profile: failed to open file\n"); + return false; + } + stream.close(); } catch (std::exception & e) { @@ -67,11 +73,15 @@ bool CProfile::SaveCurrentDirectory() { try { - #if DEV_BUILD - bp::ini_parser::write_ini("colobot.ini", m_propertyTree); - #else - bp::ini_parser::write_ini(GetSystemUtils()->GetProfileFileLocation(), m_propertyTree); - #endif + COutputStream stream; + stream.open("colobot.ini"); + if(stream.is_open()) { + bp::ini_parser::write_ini(stream, m_propertyTree); + } else { + GetLogger()->Error("Error on storing profile: failed to open file\n"); + return false; + } + stream.close(); } catch (std::exception & e) { |