From fcf3870b7c0f30a5991e518ad8a404a9d38c3a45 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Fri, 26 Jan 2018 23:09:31 +0100 Subject: Using boost::program_options instead of libconfig --- src/main.cpp | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) (limited to 'src/main.cpp') diff --git a/src/main.cpp b/src/main.cpp index cce2c61..70f22be 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -51,7 +51,6 @@ int main(int argc, char **argv) // default config, :/poi.cfg QCommandLineOption defaultConfigOption("default-config", "Set the default configuration file.", "path"); - defaultConfigOption.setDefaultValue(":/poi.cfg"); parser.addOption(defaultConfigOption); QCommandLineOption profileOption({ "p", "profile" }, "Use this profile.", "PROFILE"); @@ -76,14 +75,20 @@ int main(int argc, char **argv) qDebug("profile=%s", qUtf8Printable(parser.value(profileOption))); #endif - std::shared_ptr config = std::make_shared( - parser.value(configOption).toStdString(), - QStandardPaths::writableLocation(QStandardPaths::HomeLocation).toStdString()); + std::shared_ptr config = std::make_shared(); // first load the default configuration - config->read(parser.value(defaultConfigOption)); + if(parser.isSet(defaultConfigOption)) { + qDebug("Reading default configuration [%s]: %s", + qUtf8Printable(parser.value(defaultConfigOption)), + config->read(parser.value(defaultConfigOption)) ? "ok" : "failed"); + } // then load in the user configuration, which will overwrite it - config->read(parser.value(configOption)); + if(parser.isSet(configOption)) { + qDebug("Reading configuration [%s]: %s", + qUtf8Printable(parser.value(configOption)), + config->read(parser.value(configOption)) ? "ok" : "failed"); + } // check for other instances // if we socket hasn't been disabled (socket is not none) -- cgit v1.2.1