mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-03 03:20:57 +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:
@@ -480,12 +480,12 @@ int ast_register_indication_country(struct ind_tone_zone *zone)
|
||||
if (tz == current_tonezone)
|
||||
current_tonezone = zone;
|
||||
/* Remove from the linked list */
|
||||
AST_RWLIST_REMOVE_CURRENT(&tone_zones, list);
|
||||
AST_RWLIST_REMOVE_CURRENT(list);
|
||||
/* Finally free the zone itself */
|
||||
free_zone(tz);
|
||||
break;
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
|
||||
/* Add zone to the list */
|
||||
AST_RWLIST_INSERT_TAIL(&tone_zones, zone, list);
|
||||
@@ -515,12 +515,12 @@ int ast_unregister_indication_country(const char *country)
|
||||
current_tonezone = NULL;
|
||||
}
|
||||
/* Remove from the list */
|
||||
AST_RWLIST_REMOVE_CURRENT(&tone_zones, list);
|
||||
AST_RWLIST_REMOVE_CURRENT(list);
|
||||
ast_verb(3, "Unregistered indication country '%s'\n", tz->country);
|
||||
free_zone(tz);
|
||||
res = 0;
|
||||
}
|
||||
AST_RWLIST_TRAVERSE_SAFE_END
|
||||
AST_RWLIST_TRAVERSE_SAFE_END;
|
||||
AST_RWLIST_UNLOCK(&tone_zones);
|
||||
|
||||
return res;
|
||||
|
Reference in New Issue
Block a user