mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-26 22:30:28 +00:00
Prevent SLA settings from getting wiped out on reload
If SLA was reloaded without the config file being changed, current settings got wiped out before the SLA reload code decided it wasn't going to reload the file since nothing was changed. Moving the settings reset later in the reload process fixes this. (closes issue AST-744) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@350023 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -5910,19 +5910,6 @@ static void sla_check_reload(void)
|
||||
return;
|
||||
}
|
||||
|
||||
/* We need to actually delete the previous versions of trunks and stations now */
|
||||
AST_RWLIST_TRAVERSE_SAFE_BEGIN(&sla_stations, station, entry) {
|
||||
AST_RWLIST_REMOVE_CURRENT(entry);
|
||||
ast_free(station);
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
|
||||
AST_RWLIST_TRAVERSE_SAFE_BEGIN(&sla_trunks, trunk, entry) {
|
||||
AST_RWLIST_REMOVE_CURRENT(entry);
|
||||
ast_free(trunk);
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
|
||||
/* yay */
|
||||
sla_load_config(1);
|
||||
sla.reload = 0;
|
||||
@@ -6821,6 +6808,24 @@ static int sla_load_config(int reload)
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (reload) {
|
||||
struct sla_station *station;
|
||||
struct sla_trunk *trunk;
|
||||
|
||||
/* We need to actually delete the previous versions of trunks and stations now */
|
||||
AST_RWLIST_TRAVERSE_SAFE_BEGIN(&sla_stations, station, entry) {
|
||||
AST_RWLIST_REMOVE_CURRENT(entry);
|
||||
ast_free(station);
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
|
||||
AST_RWLIST_TRAVERSE_SAFE_BEGIN(&sla_trunks, trunk, entry) {
|
||||
AST_RWLIST_REMOVE_CURRENT(entry);
|
||||
ast_free(trunk);
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
}
|
||||
|
||||
if ((val = ast_variable_retrieve(cfg, "general", "attemptcallerid")))
|
||||
sla.attempt_callerid = ast_true(val);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user