[asterisk-dev] [Code Review] Force stream to really stop when ast_stopstream() is called

Tilghman Lesher tlesher at digium.com
Fri Sep 18 12:07:04 CDT 2009


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/372/
-----------------------------------------------------------

Review request for Asterisk Developers.


Summary
-------

In issue 15129, the reporter has an issue where GSM frames are getting queued after the writeformat has changed to ulaw.  I tracked this down to the use of reference counts within filestreams, whereby when the stream is interrupted, we no longer immediately cut off queuing frames from that stream; instead we wait until the last reference count from the filestream is decremented to stop queuing frames.  By forcing the stream to stop immediately in ast_stopstream() (which calls ast_closestream), even though the filestream is not closed until later, we avoid this potential for getting an invalid format frame written to the channel.


This addresses bug 15129.
    https://issues.asterisk.org/view.php?id=15129


Diffs
-----

  /branches/1.6.1/main/file.c 219412 

Diff: https://reviewboard.asterisk.org/r/372/diff


Testing
-------

Playback runs fine, and is interrupted by DTMF fine.  Unfortunately, since I cannot replicate the reporter's scenario, I am unable to confirm whether this fixes his issue.


Thanks,

Tilghman




More information about the asterisk-dev mailing list