Fix CPU spike when pressing DTMF after agent login.

The problem here is that DTMF was being continuously deferred and requeued
since ast_safe_sleep is called in a loop. There are serveral other places in the
code that sleeps and then loops in a similar fashion. Because of this fact I
opted to not defer DTMF any more, which will not affect the original fix:

https://reviewboard.asterisk.org/r/674

(closes issue #18130)
Reported by: rgj


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@301502 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Jeff Peeler 15 years ago
parent 08fcb05bc6
commit 4b11743a18

@ -1246,13 +1246,13 @@ int ast_is_deferrable_frame(const struct ast_frame *frame)
* be queued up or not.
*/
switch (frame->frametype) {
case AST_FRAME_DTMF_END:
case AST_FRAME_CONTROL:
case AST_FRAME_TEXT:
case AST_FRAME_IMAGE:
case AST_FRAME_HTML:
return 1;
case AST_FRAME_DTMF_END:
case AST_FRAME_DTMF_BEGIN:
case AST_FRAME_VOICE:
case AST_FRAME_VIDEO:

Loading…
Cancel
Save