mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-15 00:41:02 +00:00
improve linked-list macros in two ways:
- the *_CURRENT macros no longer need the list head pointer argument - add AST_LIST_MOVE_CURRENT to encapsulate the remove/add operation when moving entries between lists git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89106 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -706,15 +706,13 @@ static int reload(void)
|
||||
/* Purge classes that we know can go away (pooled with 0, only) */
|
||||
AST_LIST_TRAVERSE_SAFE_BEGIN(&odbc_list, class, list) {
|
||||
if (class->delme && class->haspool && class->count == 0) {
|
||||
AST_LIST_TRAVERSE_SAFE_BEGIN(&(class->odbc_obj), current, list) {
|
||||
AST_LIST_REMOVE_CURRENT(&(class->odbc_obj), list);
|
||||
while ((current = AST_LIST_REMOVE_HEAD(&class->odbc_obj, list))) {
|
||||
odbc_obj_disconnect(current);
|
||||
ast_mutex_destroy(¤t->lock);
|
||||
ast_free(current);
|
||||
}
|
||||
AST_LIST_TRAVERSE_SAFE_END;
|
||||
|
||||
AST_LIST_REMOVE_CURRENT(&odbc_list, list);
|
||||
AST_LIST_REMOVE_CURRENT(list);
|
||||
ast_free(class);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user