[asterisk-dev] [Code Review] fix using external MP3 player with res_timing_dahdi being used as timer causing MOH stream to stop

elguero reviewboard at asterisk.org
Wed Dec 7 12:50:40 CST 2011

This is an automatically generated e-mail. To reply, visit:

(Updated Dec. 7, 2011, 12:50 p.m.)

Review request for Asterisk Developers.


- Create a another module load level so that the timing modules are fully loaded before modules like MOH are loaded
- Move the removal of the moh members to the beginning of the destructor and hold the lock until we are done to try and prevent any possible race conditions

Hopefully this addresses the comments properly.


The attached patch does the following:

- Changes the load priority so that this module is loaded after the timing interfaces are.

At times, res_musichold.so would work with an external mp3 player.  Through debugging, I noticed that res_timing_pthread was being used at first.  If I only loaded res_timing_dahdi, then the external mp3 stream would start and then pause causing nothing to be heard on the channel. So, if res_timing_pthread was present at start, upon reload, since res_timing_dahdi takes priority as a timer, the timing changed to this timing interface and would just sit there, hence the need for the following change.

- Adds the POLLPRI event for ast_poll, otherwise ast_poll just sits there waiting when the timer being used is res_timing_dahdi.so

- Attempt to cleanup a few items

This addresses bug ASTERISK-17474.

Diffs (updated)

  /trunk/include/asterisk/module.h 346950 
  /trunk/res/res_musiconhold.c 346950 
  /trunk/res/res_timing_dahdi.c 346950 
  /trunk/res/res_timing_pthread.c 346950 
  /trunk/res/res_timing_timerfd.c 346950 

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


Local box running CentOS 5.7 and dahdi-trunk.

On JIRA, tested by:
Thomas Arimont - 1.8.7
Luke H - 1.8.8-rc3, CentOS 5.5 (32bit), DAHDI



-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20111207/22a644e8/attachment.htm>

More information about the asterisk-dev mailing list