diff options
author | seanbright <seanbright@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-06-16 17:33:10 +0000 |
---|---|---|
committer | seanbright <seanbright@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-06-16 17:33:10 +0000 |
commit | d205516f1d6ad8043fc1f1c7825906ec963b9e26 (patch) | |
tree | 112e6f5d47d2190872d7fe5f311b40cb59bea7d9 /cdr | |
parent | 1e3cc665ed78713074f9afb857aa2035c72a27cc (diff) |
Last commit for a bit, minor cleanups and move the lock initialization.
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@123076 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'cdr')
-rw-r--r-- | cdr/cdr_tds.c | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/cdr/cdr_tds.c b/cdr/cdr_tds.c index 6ac5c09c5..2991df134 100644 --- a/cdr/cdr_tds.c +++ b/cdr/cdr_tds.c @@ -109,6 +109,8 @@ static void get_date(char *, struct timeval); static int mssql_connect(void); static int mssql_disconnect(void); +static void cdr_tds_config_destroy(void); + static int tds_log(struct ast_cdr *cdr) { char sqlcmd[2048], start[80], answer[80], end[80]; @@ -395,15 +397,20 @@ connect_fail: return -1; } +static void cdr_tds_config_destroy(void) +{ + ast_mutex_destroy(&settings->lock); + ast_string_field_free_memory(settings); + ast_free(settings); +} + static int tds_unload_module(void) { mssql_disconnect(); ast_cdr_unregister(name); - ast_mutex_destroy(&settings->lock); - ast_string_field_free_memory(settings); - ast_free(settings); + cdr_tds_config_destroy(); return 0; } @@ -417,7 +424,7 @@ static int tds_load_module(int reload) cfg = ast_config_load(config, config_flags); if (!cfg) { - ast_log(LOG_NOTICE, "Unable to load config for MSSQL CDR's: %s\n", config); + ast_log(LOG_NOTICE, "Unable to load config for MSSQL CDRs: %s\n", config); return 0; } else if (cfg == CONFIG_STATUS_FILEUNCHANGED) return 0; @@ -441,9 +448,9 @@ static int tds_load_module(int reload) ast_config_destroy(cfg); return 0; } - } - ast_mutex_init(&settings->lock); + ast_mutex_init(&settings->lock); + } ptr = ast_variable_retrieve(cfg, "global", "hostname"); if (ptr) { @@ -470,7 +477,7 @@ static int tds_load_module(int reload) if (ptr) { ast_string_field_set(settings, password, ptr); } else { - ast_log(LOG_ERROR,"Database password not specified.\n"); + ast_log(LOG_ERROR, "Database password not specified.\n"); } ptr = ast_variable_retrieve(cfg, "global", "charset"); |