[asterisk-dev] segmentation fault

jonathan augenstine jaugenstine at gmail.com
Wed Oct 29 01:30:15 CDT 2008


Russell,

Basically what I am trying to do is to play my own music on hold to callers
waiting in a queue.  During that call I want to be able to collect DTMF from
the caller so that I can change audio files that I am playing back to the
caller.

Jonathan

On Tue, Oct 28, 2008 at 9:31 PM, Russell Bryant <russell at digium.com> wrote:

>
> ----- "BJ Weschke" <bweschke at gmail.com> wrote:
>
> > jonathan augenstine wrote:
> > > (gdb) bt
> > > #0  0xb7f0a540 in pthread_mutex_lock () from
> > > /lib/tls/i686/cmov/libpthread.so.0
> > > #1  0x080f5b22 in ast_sched_runq (con=0x0)
> > >     at
> > /home/jonathan/asterisk/asterisk-1.4.22/include/asterisk/lock.h:755
> > > #2  0x080a1488 in waitstream_core (c=0x81f8e50, breakon=0x81261d1
> > > "0123456789#*ABCD",
> > >     forward=0x81281b0 "", rewind=0x81281b0 "", skip_ms=0,
> > audiofd=-1,
> > > cmdfd=-1,
> > >     context=0x0) at file.c:1217
> > > #3  0x080a18e8 in ast_waitstream_full (c=0x81f8e50,
> > >     breakon=0x81261d1 "0123456789#*ABCD", audiofd=-1, cmdfd=-1) at
> > > file.c:1238
> > > #4  0x0808a9c3 in ast_readstring_full (c=0x81f8e50, s=0xb6a12068 "",
> >
> > > len=1,
> > >     timeout=5000, ftimeout=10000, enders=0x8138971 "#", audiofd=-1,
> >
> > > ctrlfd=-1)
> > >     at channel.c:3120
> > > #5  0x0808ab14 in ast_readstring (c=0x81f8e50, s=0xb6a12068 "",
> > len=1,
> > > timeout=5000,
> > >     ftimeout=10000, enders=0x8138971 "#") at channel.c:3104
> > > #6  0x08060a9d in ast_app_getdata (c=0x81f8e50,
> > >     prompt=0xb6a125c0
> > > "/var/lib/asterisk/sounds/en/shared_audio/ad_spots/pcm8/Spot72691",
> >
> > > s=0xb6a12068 "", maxlen=1, timeout=0) at app.c:125
> > > #7  0xb7c45870 in play_voodoo_ad (chan=0x81f8e50, audio=0xb6a121a0)
> > at
> > > res_voodoo.c:462
> > > #8  0xb7c464e8 in play_voodoo_local (parm=0x81f8e50) at
> > res_voodoo.c:659
> > > #9  0x0810256b in dummy_start (data=0x81f9328) at utils.c:912
> > > #10 0xb7f084fb in start_thread () from
> > /lib/tls/i686/cmov/libpthread.so.0
> > > #11 0xb7e21e5e in clone () from /lib/tls/i686/cmov/libc.so.6
> > > (
> >
> >
> >  Looks like you're trying to lock a channel lock on a channel that's
> > not there any more ?
>
> Indeed, it's possible.
>
> By looking at the backtrace, I can see that you created a thread in your
> module, and this thread is attempting to play a file on a channel.  In
> Asterisk, doing media handling like this outside of the normal channel
> threads is not recommended, to say the least.  :)
>
> Perhaps you can share more information on what you're trying to accomplish
> and we can provide some guidance on the right approach.
>
>
> --
> Russell Bryant
> Senior Software Engineer
> Open Source Team Lead
> Digium, Inc.
>
> _______________________________________________
> --Bandwidth and Colocation Provided by http://www.api-digital.com--
>
> asterisk-dev mailing list
> To UNSUBSCRIBE or update options visit:
>   http://lists.digium.com/mailman/listinfo/asterisk-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.digium.com/pipermail/asterisk-dev/attachments/20081028/7269726f/attachment.htm 


More information about the asterisk-dev mailing list