From ce050716c2e4f1dd56fbd3fa3290bfe258ea1af6 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Sat, 27 Jan 2018 13:44:22 +0100 Subject: Passing unknown command line parameters to the Configuration - no longer compiling CookiesForm that we don't use --- src/configuration.cpp | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) (limited to 'src/configuration.cpp') diff --git a/src/configuration.cpp b/src/configuration.cpp index 4e72d18..c114155 100644 --- a/src/configuration.cpp +++ b/src/configuration.cpp @@ -12,7 +12,7 @@ namespace po = boost::program_options; -Configuration::Configuration(const QStringList &options) +Configuration::Configuration() { m_homePath = QStandardPaths::writableLocation(QStandardPaths::HomeLocation).toStdString(); @@ -81,20 +81,13 @@ Configuration::Configuration(const QStringList &options) // store the defaults into the vm { - int argc = options.length(); - const char* argv[argc]; - for(int i = 0; i < argc; ++i) { - argv[i] = qUtf8Printable(options.at(i)); - } - - po::store(po::parse_command_line(argc, argv, desc), vm); + const char* argv[0]; + po::store(po::parse_command_line(0, argv, desc), vm); } } -Configuration::~Configuration() -{ -} +Configuration::~Configuration() = default; bool Configuration::read(const QString &path) { @@ -103,3 +96,13 @@ bool Configuration::read(const QString &path) return true; } +bool Configuration::parse(int argc, const char **argv) +{ + try { + po::store(po::parse_command_line(argc, argv, desc), vm); + } catch (const po::error &e) { + return false; + } + + return true; +} -- cgit v1.2.1