The dahdi_hangup() call does not clean up the channel fully.

After dahdi_hangup() has supposedly hungup an ISDN channel there is still
traffic on the S0-bus because the channel was not cleaned up fully.

Shuffled the hangup code to include some missing cleanup.  Also fixed some
code formatting in the area.  I think the primary missing clean up code
was the call to tone_zone_play_tone() to turn off any active tones on the
channel.

(closes issue #19188)
Reported by: jg1234
Patches:
      issue19188_v1.8.patch uploaded by rmudgett (license 664)
Tested by: jg1234


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@316224 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Richard Mudgett
2011-05-03 19:18:30 +00:00
parent 981716535a
commit c5ad2f12a0
3 changed files with 77 additions and 51 deletions

View File

@@ -1467,7 +1467,6 @@ int analog_hangup(struct analog_pvt *p, struct ast_channel *ast)
}
analog_stop_callwait(p);
ast->tech_pvt = NULL;
ast_verb(3, "Hanging up on '%s'\n", ast->name);