diff options
author | krzys-h <krzys_h@interia.pl> | 2014-10-15 21:31:43 +0200 |
---|---|---|
committer | krzys-h <krzys_h@interia.pl> | 2014-10-15 21:31:43 +0200 |
commit | b85a41b42a2f95555ceaa985789ec7608085790c (patch) | |
tree | efd2fb8b196cefbfbfa821b75e8c58939d683126 | |
parent | 63b6aa56b01d3764f87eb9f3ddcde68bc98f0e6b (diff) | |
download | colobot-b85a41b42a2f95555ceaa985789ec7608085790c.tar.gz colobot-b85a41b42a2f95555ceaa985789ec7608085790c.tar.bz2 colobot-b85a41b42a2f95555ceaa985789ec7608085790c.zip |
Also fixed the same thing in file writing code
-rw-r--r-- | src/common/profile.cpp | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/common/profile.cpp b/src/common/profile.cpp index c43cd75..92fc1d6 100644 --- a/src/common/profile.cpp +++ b/src/common/profile.cpp @@ -59,7 +59,7 @@ bool CProfile::Init() try { std::unique_ptr<std::istream> stream; - bool good = false; + bool good; if (m_useCurrentDirectory) { std::ifstream* inputStream = new std::ifstream("./colobot.ini"); @@ -98,16 +98,21 @@ bool CProfile::Save() try { std::unique_ptr<std::ostream> stream; + bool good; if (m_useCurrentDirectory) { - stream = std::unique_ptr<std::ostream>(new std::ofstream("./colobot.ini")); + std::ofstream* outputStream = new std::ofstream("./colobot.ini"); + stream = std::unique_ptr<std::ostream>(outputStream); + good = outputStream->good(); } else { - stream = std::unique_ptr<std::ostream>(new COutputStream("colobot.ini")); + COutputStream* outputStream = new COutputStream("colobot.ini"); + stream = std::unique_ptr<std::ostream>(outputStream); + good = outputStream->is_open(); } - if (stream->good()) + if (good) { bp::ini_parser::write_ini(*stream, m_propertyTree); } |