Fixed a couple of frame leaks that were found during testing.
ASTERISK-24828 #close
Reported by: John Hardin
Review: https://reviewboard.asterisk.org/r/4445/
........
Merged revisions 432362 from http://svn.asterisk.org/svn/asterisk/branches/11
........
Merged revisions 432363 from http://svn.asterisk.org/svn/asterisk/branches/13
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@432364
65c4cc65-6c06-0410-ace0-
fbb531ad65f3
while (ast_waitfor(chan, -1) > -1 && csth.spy_audiohook.status == AST_AUDIOHOOK_STATUS_RUNNING) {
if (!(f = ast_read(chan)) || ast_check_hangup(chan)) {
running = -1;
+ if (f) {
+ ast_frfree(f);
+ }
break;
}
}
}
- if (res == 0) {
- ast_channel_lock(chan);
- while ((cur = AST_LIST_REMOVE_HEAD(&frames, frame_list))) {
+ ast_channel_lock(chan);
+ while ((cur = AST_LIST_REMOVE_HEAD(&frames, frame_list))) {
+ if (res == 0) {
ast_queue_frame_head(chan, cur);
- ast_frfree(cur);
}
- ast_channel_unlock(chan);
+ ast_frfree(cur);
}
+ ast_channel_unlock(chan);
} while (0);
break;
default: