summaryrefslogtreecommitdiff
path: root/main/audiohook.c
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2013-07-19 23:30:10 +0000
committerRichard Mudgett <rmudgett@digium.com>2013-07-19 23:30:10 +0000
commit643fb1ed1400a5c32177a40dbfcba943d6f989d7 (patch)
tree7d5bf745f1ff9357f999f1786ce60166ad04e79d /main/audiohook.c
parent2838683742cd21a452298801e41e85cd890add06 (diff)
Minor optimizations.
* Made ast_audiohook_detach_list() and ast_audiohook_write_list_empty() NULL tolerant. * Made ast_audiohook_detach_list() return void since it is a destructor. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394836 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'main/audiohook.c')
-rw-r--r--main/audiohook.c27
1 files changed, 11 insertions, 16 deletions
diff --git a/main/audiohook.c b/main/audiohook.c
index d46936223..6e02946aa 100644
--- a/main/audiohook.c
+++ b/main/audiohook.c
@@ -512,14 +512,14 @@ int ast_audiohook_detach(struct ast_audiohook *audiohook)
return 0;
}
-/*! \brief Detach audiohooks from list and destroy said list
- * \param audiohook_list List of audiohooks
- * \return Returns 0 on success, -1 on failure
- */
-int ast_audiohook_detach_list(struct ast_audiohook_list *audiohook_list)
+void ast_audiohook_detach_list(struct ast_audiohook_list *audiohook_list)
{
- int i = 0;
- struct ast_audiohook *audiohook = NULL;
+ int i;
+ struct ast_audiohook *audiohook;
+
+ if (!audiohook_list) {
+ return;
+ }
/* Drop any spies */
while ((audiohook = AST_LIST_REMOVE_HEAD(&audiohook_list->spy_list, list))) {
@@ -547,8 +547,6 @@ int ast_audiohook_detach_list(struct ast_audiohook_list *audiohook_list)
/* Free ourselves */
ast_free(audiohook_list);
-
- return 0;
}
/*! \brief find an audiohook based on its source
@@ -899,13 +897,10 @@ static struct ast_frame *audio_audiohook_write_list(struct ast_channel *chan, st
int ast_audiohook_write_list_empty(struct ast_audiohook_list *audiohook_list)
{
- if (AST_LIST_EMPTY(&audiohook_list->spy_list) &&
- AST_LIST_EMPTY(&audiohook_list->whisper_list) &&
- AST_LIST_EMPTY(&audiohook_list->manipulate_list)) {
-
- return 1;
- }
- return 0;
+ return !audiohook_list
+ || (AST_LIST_EMPTY(&audiohook_list->spy_list)
+ && AST_LIST_EMPTY(&audiohook_list->whisper_list)
+ && AST_LIST_EMPTY(&audiohook_list->manipulate_list));
}
/*! \brief Pass a frame off to be handled by the audiohook core