diff options
Diffstat (limited to 'main/autoservice.c')
-rw-r--r-- | main/autoservice.c | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/main/autoservice.c b/main/autoservice.c index 8bcf81742..1150c4c7f 100644 --- a/main/autoservice.c +++ b/main/autoservice.c @@ -168,22 +168,15 @@ static void *autoservice_run(void *ign) continue; } - if (defer_frame != f) { - if ((dup_f = ast_frdup(defer_frame))) { - AST_LIST_INSERT_HEAD(&ents[i]->deferred_frames, dup_f, frame_list); - } - } else { - if ((dup_f = ast_frisolate(defer_frame))) { - if (dup_f != defer_frame) { - ast_frfree(defer_frame); - } - AST_LIST_INSERT_HEAD(&ents[i]->deferred_frames, dup_f, frame_list); - } + if ((dup_f = ast_frdup(defer_frame))) { + AST_LIST_INSERT_HEAD(&ents[i]->deferred_frames, dup_f, frame_list); } break; } - } else if (f) { + } + + if (f) { ast_frfree(f); } } |