aboutsummaryrefslogtreecommitdiffstats
path: root/main/cdr.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-20 14:09:40 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2009-06-20 14:09:40 +0000
commit0699bad154c10539e31c46eeee1164990c955cbc (patch)
tree1dc9222a6ebec22b042d4735db647f6f2e2c8962 /main/cdr.c
parente24fc1a3de93bd0c77d2c3de48d9fc3550a1da50 (diff)
Remove unnecessary usleep() from a couple of module unload callbacks.
In passing, also tweak cdr_unregister() to hold the list lock a bit less time. git-svn-id: http://svn.digium.com/svn/asterisk/trunk@202109 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/cdr.c')
-rw-r--r--main/cdr.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/main/cdr.c b/main/cdr.c
index 3f7b9aee2..610c2ab31 100644
--- a/main/cdr.c
+++ b/main/cdr.c
@@ -148,13 +148,16 @@ void ast_cdr_unregister(const char *name)
AST_RWLIST_TRAVERSE_SAFE_BEGIN(&be_list, i, list) {
if (!strcasecmp(name, i->name)) {
AST_RWLIST_REMOVE_CURRENT(list);
- ast_verb(2, "Unregistered '%s' CDR backend\n", name);
- ast_free(i);
break;
}
}
AST_RWLIST_TRAVERSE_SAFE_END;
AST_RWLIST_UNLOCK(&be_list);
+
+ if (i) {
+ ast_verb(2, "Unregistered '%s' CDR backend\n", name);
+ ast_free(i);
+ }
}
int ast_cdr_isset_unanswered(void)