Author: mjordan Date: Sat Dec 6 11:19:39 2014 New Revision: 429027 URL: http://svnview.digium.com/svn/asterisk?view=rev&rev=429027 Log: 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) Modified: branches/11/apps/app_meetme.c Modified: branches/11/apps/app_meetme.c URL: http://svnview.digium.com/svn/asterisk/branches/11/apps/app_meetme.c?view=diff&rev=429027&r1=429026&r2=429027 ============================================================================== --- branches/11/apps/app_meetme.c (original) +++ branches/11/apps/app_meetme.c Sat Dec 6 11:19:39 2014 @@ -5571,21 +5571,8 @@ return AST_DEVICE_INUSE; } -static void load_config_meetme(void) -{ - struct ast_config *cfg; - struct ast_flags config_flags = { 0 }; - const char *val; - - if (!(cfg = ast_config_load(CONFIG_FILE_NAME, config_flags))) { - return; - } else if (cfg == CONFIG_STATUS_FILEINVALID) { - ast_log(LOG_ERROR, "Config file " CONFIG_FILE_NAME " is in an invalid format. Aborting.\n"); - return; - } - - audio_buffers = DEFAULT_AUDIO_BUFFERS; - +static void meetme_set_defaults(void) +{ /* Scheduling support is off by default */ rt_schedule = 0; fuzzystart = 0; @@ -5594,7 +5581,29 @@ extendby = 0; /* Logging of participants defaults to ON for compatibility reasons */ - rt_log_members = 1; + 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) { + ast_log(LOG_ERROR, "Config file " CONFIG_FILE_NAME " is in an invalid format. Aborting.\n"); + return; + } + + if (reload) { + meetme_set_defaults(); + } if ((val = ast_variable_retrieve(cfg, "general", "audiobuffers"))) { if ((sscanf(val, "%30d", &audio_buffers) != 1)) { @@ -7801,7 +7810,7 @@ static int load_config(int reload) { - load_config_meetme(); + load_config_meetme(reload); return sla_load_config(reload); } -- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- svn-commits mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/svn-commits
