From 41526c21d391a70a784e982f33a9afa5e45d8743 Mon Sep 17 00:00:00 2001
From: Pierre Lespagnol <pierre.lespagnol@savoirfairelinux.com>
Date: Tue, 9 Mar 2021 17:18:08 -0500
Subject: [PATCH] account: fix account preference parsing

Change-Id: Iff69c5888acba0a9a165bce4f4106a217dc78134
---
 src/account.cpp      | 3 ++-
 src/account_schema.h | 4 ++--
 src/conference.cpp   | 2 +-
 3 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/src/account.cpp b/src/account.cpp
index c1f7f43e05..427bc0c48f 100644
--- a/src/account.cpp
+++ b/src/account.cpp
@@ -326,8 +326,9 @@ Account::setAccountDetails(const std::map<std::string, std::string>& details)
 
     parseBool(details, Conf::CONFIG_UPNP_ENABLED, upnpEnabled_);
     enableUpnp(upnpEnabled_ && isEnabled());
-    auto defMod = string_join(defaultModerators_);
+    std::string defMod;
     parseString(details, Conf::CONFIG_DEFAULT_MODERATORS, defMod);
+    defaultModerators_ = string_split_set(defMod);
     parseBool(details, Conf::CONFIG_LOCAL_MODERATORS_ENABLED, localModeratorsEnabled_);
     parseBool(details, Conf::CONFIG_ALL_MODERATORS_ENABLED, allModeratorsEnabled_);
 }
diff --git a/src/account_schema.h b/src/account_schema.h
index f66d87e92e..7b0ead89a4 100644
--- a/src/account_schema.h
+++ b/src/account_schema.h
@@ -70,8 +70,8 @@ static const char* const CONFIG_LOCAL_PORT = "Account.localPort";
 static const char* const CONFIG_PUBLISHED_PORT = "Account.publishedPort";
 static const char* const CONFIG_PUBLISHED_ADDRESS = "Account.publishedAddress";
 static const char* const CONFIG_UPNP_ENABLED = "Account.upnpEnabled";
-static const char* const CONFIG_DEFAULT_MODERATORS = "Account.defaultModerator";
-static const char* const CONFIG_LOCAL_MODERATORS_ENABLED = "Account.localModeratorEnabled";
+static const char* const CONFIG_DEFAULT_MODERATORS = "Account.defaultModerators";
+static const char* const CONFIG_LOCAL_MODERATORS_ENABLED = "Account.localModeratorsEnabled";
 static const char* const CONFIG_ALL_MODERATORS_ENABLED = "Account.allModeratorEnabled";
 
 // SIP specific parameters
diff --git a/src/conference.cpp b/src/conference.cpp
index 13cdb78b54..d6ead086a4 100644
--- a/src/conference.cpp
+++ b/src/conference.cpp
@@ -197,7 +197,7 @@ Conference::add(const std::string& participant_id)
                     moderators_.emplace(mod);
                 }
 
-                // Check for localModeratorEnabled preference
+                // Check for localModeratorsEnabled preference
                 if (account->isLocalModeratorsEnabled() && not localModAdded_) {
                     auto accounts = jami::Manager::instance().getAllAccounts<JamiAccount>();
                     for (const auto& account : accounts) {
-- 
GitLab