diff --git a/src/config.cpp b/src/config.cpp index d123c7b080a0d6fb97b52abfff862d7296c56292..d33d7d514b8581ed70ca37debbf88bfae68846b4 100644 --- a/src/config.cpp +++ b/src/config.cpp @@ -124,6 +124,13 @@ bool Config::load(std::istream &ifs, boost::program_options::options_description ("backend.no_vcard_fetch", value()->default_value(false), "True if VCards for buddies should not be fetched. Only avatars will be forwarded.") ; + // Load configs passed by command line + if (m_argc != 0 && m_argv) { + basic_command_line_parser parser = command_line_parser(m_argc, m_argv).options(opts).allow_unregistered(); + parsed_options parsed = parser.run(); + store(parsed, m_variables); + } + parsed_options parsed = parse_config_file(ifs, opts, true); bool found_working = false; @@ -189,11 +196,6 @@ bool Config::load(std::istream &ifs, boost::program_options::options_description } } - // Load configs passed by command line - if (m_argc != 0 && m_argv) { - store(parse_command_line(m_argc, m_argv, opts), m_variables); - } - store(parsed, m_variables); notify(m_variables);