[Gnome] Segmentation Fault After Call Connects
Call initiated by double-clicking contact in Gnome to Android device. Call connects, then nothing is heard/seen in Gnome except for the black screen view. dring was started with "-cd" before starting ring. Gnome Ring stayed open after dring segfaulted. I think when I also pressed to End Call, gnome ring stated dring wasn't running or something which was correct. When I brought dring back up manually, I still couldn't end call, but could bring up the chat view which hid the call view.
Double clicking contact again, started the call and while there was no segfault this time, there was still no audio sent/received, though I did see "Connection to PulseAudio server established" in the dring output. The call view in android went back to chat view, but in gnome, call view remained. Trying to click End Call said nothing in gnome ring, but dring showed "Could not hang up non-existant call..."
Restarting both dring and gnome ring, I JUST noticed "No audio layer created, possibly built without audio support" from manager.cpp after the "Connection to pulseaudio server established" message. Weird, started call again and did see audio based output in dring before another segfault:
[1528740918.278|31546|media_decoder.cpp :114 ] Trying to open device dummyFilename with format sdp, pixel format , size 0x0, rate 0.000000
[1528740918.278|31545|media_encoder.cpp :549 ] [libopus] Using 4 threads
[1528740918.278|31546|media_decoder.cpp :131 ] Using format sdp
[1528740918.278|31545|media_encoder.cpp :621 ] [libopus] Frame size 960
[1528740918.279|31546|media_decoder.cpp :172 ] Finding audio stream info
[1528740918.279|31331|media_encoder.cpp :549 ] [libvpx] Using 4 threads
Segmentation fault (core dumped)
Process 29872 (dring) of user 1000 dumped core.
Stack trace of thread 29872:
#0 0x00007fe25d583d66 atoi (libring.so.0)
#1 0x00007fe25d583fa3 _ZN4ring12MediaEncoder9addStreamERKNS_15SystemCodecInfoENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE (libring.so.0)
#2 0x00007fe25d5874cf _ZN4ring12MediaEncoder14openLiveOutputERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_16MediaDescriptionE (libring.so.0)
#3 0x00007fe25d6837fc _ZN4ring5video11VideoSenderC2ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_12DeviceParamsERKNS_16MediaDescriptionERNS_10SocketPairEtt (libring.so.0)
#4 0x00007fe25d685329 _ZN4ring5video15VideoRtpSession11startSenderEv (libring.so.0)
#5 0x00007fe25d686221 _ZN4ring5video15VideoRtpSession5startESt10unique_ptrINS_9IceSocketESt14default_deleteIS3_EES6_ (libring.so.0)
#6 0x00007fe25d5620d1 _ZN4ring7SIPCall13startAllMediaEv (libring.so.0)
#7 0x00007fe25d562aa8 operator() (libring.so.0)
#8 0x00007fe25d4f1dc6 _ZNKSt8functionIFbvEEclEv (libring.so.0)
#9 0x00007fe25dc577f3 _ZN4DBus15DefaultMainLoop8dispatchEv (libdbus-c++-1.so.0)
#10 0x00007fe25dc57fb1 _ZN4DBus13BusDispatcher5enterEv (libdbus-c++-1.so.0)
#11 0x000055f3395f6bdf _ZN10DBusClient10event_loopEv (dring)
#12 0x000055f3395f633f main (dring)
#13 0x00007fe2554e506b __libc_start_main (libc.so.6)
#14 0x000055f3395f665a _start (dring)
Stack trace of thread 29972:
#0 0x00007fe2555afea9 __poll (libc.so.6)
#1 0x00007fe25c872773 n/a (libpulse.so.0)
#2 0x00007fe25c863bd0 pa_mainloop_poll (libpulse.so.0)
#3 0x00007fe25c864271 pa_mainloop_iterate (libpulse.so.0)
#4 0x00007fe25c864301 pa_mainloop_run (libpulse.so.0)
#5 0x00007fe25c8726ae n/a (libpulse.so.0)
#6 0x00007fe254ddb81c n/a (libpulsecommon-11.1.so)
#7 0x00007fe25a185075 start_thread (libpthread.so.0)
#8 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30079:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d5dadf0 wait<ring::tls::TlsSession::TlsSessionImpl::handleStateEstablished(ring::tls::TlsSessionState)::<lambda()> > (libring.so.0)
#3 0x00007fe25d5db0c6 _ZNKSt8functionIFN4ring3tls15TlsSessionStateES2_EEclES2_ (libring.so.0)
#4 0x00007fe25d514acd _ZNKSt8functionIFvvEEclEv (libring.so.0)
#5 0x00007fe25d5152ba _ZSt13__invoke_implIvMN4ring10ThreadLoopEFvRNSt6thread2idESt8functionIFbvEES5_IFvvEES9_EPS1_JSt17reference_wrapperIS3_ES7_S9_S9_EET_St21__invoke_memfun_derefOT0_OT1_DpOT2_ (libring.so.0)
#6 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#7 0x00007fe25a185075 start_thread (libpthread.so.0)
#8 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30083:
#0 0x00007fe2555f8398 __GI___strcmp_ssse3 (libc.so.6)
#1 0x00007fe257d66750 av_opt_find2 (libavutil.so.56)
#2 0x00007fe257d6757a n/a (libavutil.so.56)
#3 0x00007fe257d67cb1 av_opt_set (libavutil.so.56)
#4 0x00007fe258dfdf67 n/a (libavcodec.so.58)
#5 0x00007fe258dfe067 avcodec_alloc_context3 (libavcodec.so.58)
#6 0x00007fe25d583a68 _ZN4ring12MediaEncoder21prepareEncoderContextEP7AVCodecb (libring.so.0)
#7 0x00007fe25d583fa3 _ZN4ring12MediaEncoder9addStreamERKNS_15SystemCodecInfoENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE (libring.so.0)
#8 0x00007fe25d5874cf _ZN4ring12MediaEncoder14openLiveOutputERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERKNS_16MediaDescriptionE (libring.so.0)
#9 0x00007fe25d5a240a _ZN4ring11AudioSender5setupERNS_10SocketPairE (libring.so.0)
#10 0x00007fe25d514aa9 _ZNKSt8functionIFbvEEclEv (libring.so.0)
#11 0x00007fe25d5152ba _ZSt13__invoke_implIvMN4ring10ThreadLoopEFvRNSt6thread2idESt8functionIFbvEES5_IFvvEES9_EPS1_JSt17reference_wrapperIS3_ES7_S9_S9_EET_St21__invoke_memfun_derefOT0_OT1_DpOT2_ (libring.so.0)
#12 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#13 0x00007fe25a185075 start_thread (libpthread.so.0)
#14 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29875:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d638e63 wait<ring::detail::_ChannelBase<T, N>::receive_wait() [with T = std::unique_ptr<ring::(anonymous namespace)::CtrlMsgBase>; long unsigned int N = 0]::<lambda()> > (libring.so.0)
#3 0x00007fe25d63ffcc _ZZN4ring16DhtPeerConnector4ImplC4ERNS_11RingAccountEENKUlvE_clEv (libring.so.0)
#4 0x00007fe25d5306e9 _ZNKSt8functionIFSt10unique_ptrINSt13__future_base12_Result_baseENS2_8_DeleterEEvEEclEv (libring.so.0)
#5 0x00007fe25a18c9af __pthread_once_slow (libpthread.so.0)
#6 0x00007fe25d63cd88 __gthread_once (libring.so.0)
#7 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#8 0x00007fe25a185075 start_thread (libpthread.so.0)
#9 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29873:
#0 0x00007fe2555b21d7 __select (libc.so.6)
#1 0x00007fe25d691ef2 _ZN4ring5video22VideoDeviceMonitorImpl3runEv (libring.so.0)
#2 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#3 0x00007fe25a185075 start_thread (libpthread.so.0)
#4 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29876:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe25bbb8365 n/a (libthreadutil.so.6)
#2 0x00007fe25bbb7490 n/a (libthreadutil.so.6)
#3 0x00007fe25a185075 start_thread (libpthread.so.0)
#4 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29874:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d638e63 wait<ring::detail::_ChannelBase<T, N>::receive_wait() [with T = std::unique_ptr<ring::(anonymous namespace)::CtrlMsgBase>; long unsigned int N = 0]::<lambda()> > (libring.so.0)
#3 0x00007fe25d63ffcc _ZZN4ring16DhtPeerConnector4ImplC4ERNS_11RingAccountEENKUlvE_clEv (libring.so.0)
#4 0x00007fe25d5306e9 _ZNKSt8functionIFSt10unique_ptrINSt13__future_base12_Result_baseENS2_8_DeleterEEvEEclEv (libring.so.0)
#5 0x00007fe25a18c9af __pthread_once_slow (libpthread.so.0)
#6 0x00007fe25d63cd88 __gthread_once (libring.so.0)
#7 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#8 0x00007fe25a185075 start_thread (libpthread.so.0)
#9 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29879:
#0 0x00007fe25a18b35b pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe25bbb71b4 n/a (libthreadutil.so.6)
#2 0x00007fe25a185075 start_thread (libpthread.so.0)
#3 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29878:
#0 0x00007fe25a18b35b pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe25bbb71b4 n/a (libthreadutil.so.6)
#2 0x00007fe25a185075 start_thread (libpthread.so.0)
#3 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29881:
#0 0x00007fe25a18b35b pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe25bbb71b4 n/a (libthreadutil.so.6)
#2 0x00007fe25a185075 start_thread (libpthread.so.0)
#3 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30077:
#0 0x00007fe2555b21d7 __select (libc.so.6)
#1 0x00007fe25d718d71 pj_sock_select (libring.so.0)
#2 0x00007fe25d714e65 pj_ioqueue_poll (libring.so.0)
#3 0x00007fe25d5180f9 _ZN4ring12IceTransport4Impl12handleEventsEj (libring.so.0)
#4 0x00007fe25d5182de operator() (libring.so.0)
#5 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#6 0x00007fe25a185075 start_thread (libpthread.so.0)
#7 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30080:
#0 0x00007fe2555b21d7 __select (libc.so.6)
#1 0x00007fe25d718d71 pj_sock_select (libring.so.0)
#2 0x00007fe25d714e65 pj_ioqueue_poll (libring.so.0)
#3 0x00007fe25d5180f9 _ZN4ring12IceTransport4Impl12handleEventsEj (libring.so.0)
#4 0x00007fe25d5182de operator() (libring.so.0)
#5 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#6 0x00007fe25a185075 start_thread (libpthread.so.0)
#7 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30084:
#0 0x00007fe258e0e5e0 n/a (libavcodec.so.58)
#1 0x00007fe258947b9f n/a (libavcodec.so.58)
#2 0x00007fe258f216b2 avcodec_open2 (libavcodec.so.58)
#3 0x00007fe2585eb42a avformat_find_stream_info (libavformat.so.58)
#4 0x00007fe25d57ee89 _ZN4ring12MediaDecoder11setupStreamE11AVMediaType (libring.so.0)
#5 0x00007fe25d5a20bf _ZN4ring18AudioReceiveThread5setupEv (libring.so.0)
#6 0x00007fe25d514aa9 _ZNKSt8functionIFbvEEclEv (libring.so.0)
#7 0x00007fe25d5152ba _ZSt13__invoke_implIvMN4ring10ThreadLoopEFvRNSt6thread2idESt8functionIFbvEES5_IFvvEES9_EPS1_JSt17reference_wrapperIS3_ES7_S9_S9_EET_St21__invoke_memfun_derefOT0_OT1_DpOT2_ (libring.so.0)
#8 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#9 0x00007fe25a185075 start_thread (libpthread.so.0)
#10 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29890:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d51581d wait<ring::ThreadPool::run(std::function<void()>&&)::<lambda()>::<lambda()> > (libring.so.0)
#3 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#4 0x00007fe25a185075 start_thread (libpthread.so.0)
#5 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29882:
#0 0x00007fe25a18b35b pthread_cond_timedwait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe25bbb71b4 n/a (libthreadutil.so.6)
#2 0x00007fe25a185075 start_thread (libpthread.so.0)
#3 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29914:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d51581d wait<ring::ThreadPool::run(std::function<void()>&&)::<lambda()>::<lambda()> > (libring.so.0)
#3 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#4 0x00007fe25a185075 start_thread (libpthread.so.0)
#5 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29887:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d51581d wait<ring::ThreadPool::run(std::function<void()>&&)::<lambda()>::<lambda()> > (libring.so.0)
#3 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#4 0x00007fe25a185075 start_thread (libpthread.so.0)
#5 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29883:
#0 0x00007fe2555b21d7 __select (libc.so.6)
#1 0x00007fe25bdc5398 n/a (libupnp.so.6)
#2 0x00007fe25bbb7490 n/a (libthreadutil.so.6)
#3 0x00007fe25a185075 start_thread (libpthread.so.0)
#4 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29917:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d51581d wait<ring::ThreadPool::run(std::function<void()>&&)::<lambda()>::<lambda()> > (libring.so.0)
#3 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#4 0x00007fe25a185075 start_thread (libpthread.so.0)
#5 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 30059:
#0 0x00007fe2555b21d7 __select (libc.so.6)
#1 0x00007fe25b3aa975 n/a (libopendht.so.1)
#2 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#3 0x00007fe25a185075 start_thread (libpthread.so.0)
#4 0x00007fe2555ba53f __clone (libc.so.6)
Stack trace of thread 29884:
#0 0x00007fe25a18affc pthread_cond_wait@@GLIBC_2.3.2 (libpthread.so.0)
#1 0x00007fe255edfd5d __gthread_cond_wait (libstdc++.so.6)
#2 0x00007fe25d638e63 wait<ring::detail::_ChannelBase<T, N>::receive_wait() [with T = std::unique_ptr<ring::(anonymous namespace)::CtrlMsgBase>; long unsigned int N = 0]::<lambda()> > (libring.so.0)
#3 0x00007fe25d63ffcc _ZZN4ring16DhtPeerConnector4ImplC4ERNS_11RingAccountEENKUlvE_clEv (libring.so.0)
#4 0x00007fe25d5306e9 _ZNKSt8functionIFSt10unique_ptrINSt13__future_base12_Result_baseENS2_8_DeleterEEvEEclEv (libring.so.0)
#5 0x00007fe25a18c9af __pthread_once_slow (libpthread.so.0)
#6 0x00007fe25d63cd88 __gthread_once (libring.so.0)
#7 0x00007fe255ee5d3f execute_native_thread_routine (libstdc++.so.6)
#8 0x00007fe25a185075 start_thread (libpthread.so.0)
#9 0x00007fe2555ba53f __clone (libc.so.6)