diff options
author | Kevin P. Fleming <kpfleming@digium.com> | 2005-10-13 23:29:24 +0000 |
---|---|---|
committer | Kevin P. Fleming <kpfleming@digium.com> | 2005-10-13 23:29:24 +0000 |
commit | 7c936b8826cef30979209d11126a958404d886b6 (patch) | |
tree | 17aa83217947787d77e7bed92761f631cbd8219c /manager.c | |
parent | cc0d3c33aebfe48243479cee3dcc701bbc1a6c76 (diff) |
don't try to send events to dead sessions
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@6776 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'manager.c')
-rwxr-xr-x | manager.c | 10 |
1 files changed, 6 insertions, 4 deletions
@@ -1506,10 +1506,12 @@ int manager_event(int category, char *event, char *fmt, ...) ast_mutex_lock(&s->__lock); if (s->busy) { append_event(s, tmp); - } else if (ast_carefulwrite(s->fd, tmp, tmp_next - tmp, s->writetimeout) < 0) { - ast_log(LOG_WARNING, "Disconnecting slow (or gone) manager session!\n"); - s->dead = 1; - pthread_kill(s->t, SIGURG); + } else if (!s->dead) { + if (ast_carefulwrite(s->fd, tmp, tmp_next - tmp, s->writetimeout) < 0) { + ast_log(LOG_WARNING, "Disconnecting slow (or gone) manager session!\n"); + s->dead = 1; + pthread_kill(s->t, SIGURG); + } } ast_mutex_unlock(&s->__lock); } |