Index: main/autoservice.c =================================================================== --- main/autoservice.c (revision 91598) +++ main/autoservice.c (working copy) @@ -90,8 +90,11 @@ if (chan) { struct ast_frame *f = ast_read(chan); - if (!f) + if (!f) { + /* We got a NULL frame. Assume this means a hangup */ + ast_queue_hangup(chan); continue; + } /* Do not add a default entry in this switch statement. Each new * frame type should be addressed directly as to whether it should