summaryrefslogtreecommitdiff
path: root/apps/app_meetme.c
diff options
context:
space:
mode:
authorMatthew Jordan <mjordan@digium.com>2014-12-06 17:36:21 +0000
committerMatthew Jordan <mjordan@digium.com>2014-12-06 17:36:21 +0000
commit0cdb71aae961c8610121b135451b3a7474d7433c (patch)
tree0efc743fdd28ae06196eb2872ab2ca3090798436 /apps/app_meetme.c
parentd04445c24acb316840108fefd92e6b43c0a92115 (diff)
apps/app_meetme: Apply default values on initial load with no config file
When the app_meetme module is loaded without its configuration file, the module settings aren't initialized. In particular, this impacts the use of logging realtime members. This patch guarantees that we always set the default module settings on initial load. Review: https://reviewboard.asterisk.org/r/4242/ ASTERISK-24572 #close Reported by: Nuno Borges patches: 24572.patch uploaded by Nuno Borges (License 6116) ........ Merged revisions 429027 from http://svn.asterisk.org/svn/asterisk/branches/11 ........ Merged revisions 429028 from http://svn.asterisk.org/svn/asterisk/branches/12 ........ Merged revisions 429029 from http://svn.asterisk.org/svn/asterisk/branches/13 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@429030 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'apps/app_meetme.c')
-rw-r--r--apps/app_meetme.c35
1 files changed, 22 insertions, 13 deletions
diff --git a/apps/app_meetme.c b/apps/app_meetme.c
index bb87381fd..bc30f29be 100644
--- a/apps/app_meetme.c
+++ b/apps/app_meetme.c
@@ -5770,12 +5770,29 @@ static enum ast_device_state meetmestate(const char *data)
return AST_DEVICE_INUSE;
}
-static void load_config_meetme(void)
+static void meetme_set_defaults(void)
+{
+ /* Scheduling support is off by default */
+ rt_schedule = 0;
+ fuzzystart = 0;
+ earlyalert = 0;
+ endalert = 0;
+ extendby = 0;
+
+ /* Logging of participants defaults to ON for compatibility reasons */
+ rt_log_members = 1;
+}
+
+static void load_config_meetme(int reload)
{
struct ast_config *cfg;
struct ast_flags config_flags = { 0 };
const char *val;
+ if (!reload) {
+ meetme_set_defaults();
+ }
+
if (!(cfg = ast_config_load(CONFIG_FILE_NAME, config_flags))) {
return;
} else if (cfg == CONFIG_STATUS_FILEINVALID) {
@@ -5783,17 +5800,9 @@ static void load_config_meetme(void)
return;
}
- audio_buffers = DEFAULT_AUDIO_BUFFERS;
-
- /* Scheduling support is off by default */
- rt_schedule = 0;
- fuzzystart = 0;
- earlyalert = 0;
- endalert = 0;
- extendby = 0;
-
- /* Logging of participants defaults to ON for compatibility reasons */
- rt_log_members = 1;
+ if (reload) {
+ meetme_set_defaults();
+ }
if ((val = ast_variable_retrieve(cfg, "general", "audiobuffers"))) {
if ((sscanf(val, "%30d", &audio_buffers) != 1)) {
@@ -8000,7 +8009,7 @@ static struct ast_custom_function meetme_info_acf = {
static int load_config(int reload)
{
- load_config_meetme();
+ load_config_meetme(reload);
return sla_load_config(reload);
}