diff options
Diffstat (limited to 'main/message.c')
-rw-r--r-- | main/message.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/main/message.c b/main/message.c index a326fb97e..a6b048828 100644 --- a/main/message.c +++ b/main/message.c @@ -775,11 +775,20 @@ static void chan_cleanup(struct ast_channel *chan) if (msg_ds) { ast_channel_datastore_add(chan, msg_ds); } + /* * Clear softhangup flags. */ ast_channel_clear_softhangup(chan, AST_SOFTHANGUP_ALL); + /* + * Flush the alert pipe in case we miscounted somewhere when + * messing with frames on the read queue, we had to flush the + * read queue above, or we had an "Exceptionally long queue + * length" event. + */ + ast_channel_internal_alert_flush(chan); + ast_channel_unlock(chan); } |