X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FMoof%2FSettings.cc;h=6883ddc4f852d3edd4191957e81529f87f155c8a;hp=ad9c3b0fdebbb9b9eaf14a4ae5d752cad1acb278;hb=7e898e8ec0ff716e2fc722b883a626a6c346f107;hpb=a5f0d391406a68275b41448fc3f49e8d8396c497 diff --git a/src/Moof/Settings.cc b/src/Moof/Settings.cc index ad9c3b0..6883ddc 100644 --- a/src/Moof/Settings.cc +++ b/src/Moof/Settings.cc @@ -32,6 +32,7 @@ #include +#include "Log.hh" #include "Settings.hh" @@ -69,14 +70,14 @@ void Settings::parseArgs(int argc, char* argv[]) try { - SerializablePtr value(deserializer.deserialize()); + SerializableP value(deserializer.deserialize()); map_[key] = value; } catch (std::exception e) { // it doesn't deserialize to anything we know, so just store it // as a string - map_[key] = SerializablePtr(new SerializableString(stringValue)); + map_[key] = SerializableP(new SerializableBasic(stringValue)); } } } @@ -104,15 +105,15 @@ void Settings::loadFromFiles(const std::vector& filePaths, if (home) { - boost::replace_first(path, "$HOME", home); + boost::replace_all(path, "$HOME", home); } try { Deserializer deserializer(*it, true); - SerializablePtr obj = deserializer.deserialize(); - std::map map; + SerializableP obj = deserializer.deserialize(); + Serializable::Map map; if (obj && obj->get(map)) { @@ -129,8 +130,8 @@ void Settings::loadFromFiles(const std::vector& filePaths, } catch (Deserializer::Exception e) { - std::cerr << "Cannot load settings from " << *it << - " because an exception was thrown: " << e.what() << std::endl; + logWarning("cannot load settings from %s because an exception was" + "thrown: %s", (*it).c_str(), e.what()); } } }