Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
  • Sign in / Register
J
jami-daemon
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Locked Files
  • Issues 130
    • Issues 130
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
    • Iterations
  • Requirements
    • Requirements
    • List
  • Security & Compliance
    • Security & Compliance
    • Dependency List
    • License Compliance
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Insights
    • Issue
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
  • savoirfairelinux
  • jami-daemon
  • Issues
  • #359

Closed
Open
Opened Nov 27, 2020 by Sébastien Blin@sblinOwner

ASAN: double free on SIPCall::callAVStreams

[1606406397.973|59233|manager.cpp       :1657 ] [call:7407141028308407] Remove local audio
[1606406397.973|59233|ringbufferpool.cpp:242  ] Unbind call 7407141028308407 from all bound calls
==2090849==ERROR: AddressSanitizer: attempting double-free on 0x6030000dd2c0 in thread T1:
    #0 0x7fc638ccd8df in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1108df)
    #1 0x55a41046a4f3 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >::~pair() /usr/include/c++/9/bits/stl_pair.h:208
    #2 0x55a41046a517 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*) /usr/include/c++/9/ext/new_allocator.h:153
    #3 0x55a410468fce in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*) /usr/include/c++/9/bits/alloc_traits.h:497
    #4 0x55a410466566 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:642
    #5 0x55a4104630c2 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:650
    #6 0x55a41045f2f1 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:1915
    #7 0x55a410467e6b in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::clear() /usr/include/c++/9/bits/stl_tree.h:1266
    #8 0x55a4104654d6 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >) /usr/include/c++/9/bits/stl_tree.h:2522
    #9 0x55a410460a16 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/home/sblin/ring-project/daemon/bin/dring+0xad0a16)
    #10 0x55a41045d6d4 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/include/c++/9/bits/stl_map.h:1068
    #11 0x55a4104463ca in jami::SIPCall::stopAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1255
    #12 0x55a410440f5d in jami::SIPCall::peerHungup() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:837
    #13 0x55a4102b6644 in jami::Manager::peerHungupCall(jami::Call&) /home/sblin/ring-project/daemon/src/manager.cpp:2063
    #14 0x55a410442548 in operator() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:956
    #15 0x55a41044d320 in operator() /home/sblin/ring-project/daemon/src/manager.h:964
    #16 0x55a410454bf8 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
    #17 0x55a40fe2d717 in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
    #18 0x55a4103bf469 in jami::ScheduledExecutor::loop() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:124
    #19 0x55a4103bd980 in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:28
    #20 0x55a4103c20a9 in __invoke_impl<void, jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:60
    #21 0x55a4103c205e in __invoke<jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:95
    #22 0x55a4103c200b in _M_invoke<0> /usr/include/c++/9/thread:244
    #23 0x55a4103c1fe1 in operator() /usr/include/c++/9/thread:251
    #24 0x55a4103c1fc5 in _M_run /usr/include/c++/9/thread:195
    #25 0x7fc63642dd83  (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd6d83)
    #26 0x7fc63838c608 in start_thread /build/glibc-ZN95T4/glibc-2.31/nptl/pthread_create.c:477
    #27 0x7fc63611b292 in __clone (/lib/x86_64-linux-gnu/libc.so.6+0x122292)

0x6030000dd2c0 is located 0 bytes inside of 18-byte region [0x6030000dd2c0,0x6030000dd2d2)
freed by thread T0 here:
    #0 0x7fc638ccd8df in operator delete(void*) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1108df)
    #1 0x55a41046a4f3 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >::~pair() /usr/include/c++/9/bits/stl_pair.h:208
    #2 0x55a41046a517 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*) /usr/include/c++/9/ext/new_allocator.h:153
    #3 0x55a410468fce in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > > >::destroy<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*) /usr/include/c++/9/bits/alloc_traits.h:497
    #4 0x55a410466566 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_destroy_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:642
    #5 0x55a4104630c2 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_drop_node(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:650
    #6 0x55a41045f2f1 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_erase(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*) /usr/include/c++/9/bits/stl_tree.h:1915
    #7 0x55a410467e6b in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::clear() /usr/include/c++/9/bits/stl_tree.h:1266
    #8 0x55a4104654d6 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_erase_aux(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >) /usr/include/c++/9/bits/stl_tree.h:2522
    #9 0x55a410460a16 in std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/home/sblin/ring-project/daemon/bin/dring+0xad0a16)
    #10 0x55a41045d6d4 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::erase(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /usr/include/c++/9/bits/stl_map.h:1068
    #11 0x55a4104463ca in jami::SIPCall::stopAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1255
    #12 0x55a410440422 in jami::SIPCall::hold() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:739
    #13 0x55a4104403b4 in jami::SIPCall::onhold(std::function<void (bool)>&&) /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:725
    #14 0x55a4102a8c5e in jami::Manager::onHoldCall(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/manager.cpp:1094
    #15 0x55a40fe5c8d1 in DRing::hold(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/src/client/callmanager.cpp:99
    #16 0x55a40fdddeb1 in DBusCallManager::hold(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/sblin/ring-project/daemon/bin/dbus/dbuscallmanager.cpp:62
    #17 0x55a40fde51ed in cx::ring::Ring::CallManager_adaptor::_hold_stub(DBus::CallMessage const&) /home/sblin/ring-project/daemon/bin/dbus/dbuscallmanager.adaptor.h:855
    #18 0x55a40fdeec89 in DBus::Callback<cx::ring::Ring::CallManager_adaptor, DBus::Message, DBus::CallMessage const&>::call(DBus::CallMessage const&) const /home/sblin/ring-project/daemon/contrib/x86_64-linux-gnu/include/dbus-c++-1/dbus-c++/util.h:283
    #19 0x55a40fe32cf9 in DBus::InterfaceAdaptor::dispatch_method(DBus::CallMessage const&) (/home/sblin/ring-project/daemon/bin/dring+0x4a2cf9)
    #20 0x6150000130c7  (<unknown module>)

previously allocated by thread T1 here:
    #0 0x7fc638ccc947 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x10f947)
    #1 0x55a40fed6453 in void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag) /usr/include/c++/9/bits/basic_string.tcc:219
    #2 0x55a41046cae9 in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, 0ul>(std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&, std::tuple<>&, std::_Index_tuple<0ul>, std::_Index_tuple<>) /usr/include/c++/9/tuple:1674
    #3 0x55a41046be1b in std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>(std::piecewise_construct_t, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<>) (/home/sblin/ring-project/daemon/bin/dring+0xadbe1b)
    #4 0x55a41046ae42 in void __gnu_cxx::new_allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::construct<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) (/home/sblin/ring-project/daemon/bin/dring+0xadae42)
    #5 0x55a4104696db in void std::allocator_traits<std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > > >::construct<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::allocator<std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >&, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >*, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) (/home/sblin/ring-project/daemon/bin/dring+0xad96db)
    #6 0x55a410466bb9 in void std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_construct_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >*, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) (/home/sblin/ring-project/daemon/bin/dring+0xad6bb9)
    #7 0x55a4104636bf in std::_Rb_tree_node<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >* std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_create_node<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) (/home/sblin/ring-project/daemon/bin/dring+0xad36bf)
    #8 0x55a41045fa69 in std::_Rb_tree_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > std::_Rb_tree<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > >, std::_Select1st<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::_M_emplace_hint_unique<std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>, std::tuple<> >(std::_Rb_tree_const_iterator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > >, std::piecewise_construct_t const&, std::tuple<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&>&&, std::tuple<>&&) (/home/sblin/ring-project/daemon/bin/dring+0xacfa69)
    #9 0x55a41045cb13 in std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > > > >::operator[](std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) (/home/sblin/ring-project/daemon/bin/dring+0xaccb13)
    #10 0x55a410439fc9 in jami::SIPCall::createCallAVStream(StreamData const&, jami::Observable<std::shared_ptr<DRing::MediaFrame> >&, std::shared_ptr<jami::PublishMapSubject<std::shared_ptr<DRing::MediaFrame>, AVFrame*> > const&) /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:165
    #11 0x55a410439be8 in jami::SIPCall::createCallAVStreams() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:154
    #12 0x55a410445bdf in jami::SIPCall::startAllMedia() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1227
    #13 0x55a41044771d in operator() /home/sblin/ring-project/daemon/src/sip/sipcall.cpp:1382
    #14 0x55a410452700 in _M_invoke /usr/include/c++/9/bits/std_function.h:285
    #15 0x55a410339fdf in std::function<bool ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
    #16 0x55a4103c22bf in jami::RepeatedTask::run() /home/sblin/ring-project/daemon/src/scheduled_executor.h:76
    #17 0x55a4103be706 in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:87
    #18 0x55a4103c1a29 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
    #19 0x55a40fe2d717 in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
    #20 0x55a4103c216b in jami::Task::run() /home/sblin/ring-project/daemon/src/scheduled_executor.h:55
    #21 0x55a4103bec10 in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:98
    #22 0x55a4103c0e86 in _M_invoke /usr/include/c++/9/bits/std_function.h:300
    #23 0x55a40fe2d717 in std::function<void ()>::operator()() const /usr/include/c++/9/bits/std_function.h:688
    #24 0x55a4103bf469 in jami::ScheduledExecutor::loop() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:124
    #25 0x55a4103bd980 in operator() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:28
    #26 0x55a4103c20a9 in __invoke_impl<void, jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:60
    #27 0x55a4103c205e in __invoke<jami::ScheduledExecutor::ScheduledExecutor()::<lambda()> > /usr/include/c++/9/bits/invoke.h:95
    #28 0x55a4103c200b in _M_invoke<0> /usr/include/c++/9/thread:244
    #29 0x55a4103c1fe1 in operator() /usr/include/c++/9/thread:251

Thread T1 created by T0 here:
    #0 0x7fc638bf7805 in pthread_create (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x3a805)
    #1 0x7fc63642e048 in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) (/usr/lib/x86_64-linux-gnu/libstdc++.so.6+0xd7048)
    #2 0x55a4103bdbe8 in jami::ScheduledExecutor::ScheduledExecutor() /home/sblin/ring-project/daemon/src/scheduled_executor.cpp:29
    #3 0x55a4102a1296 in jami::Manager::ManagerPimpl::ManagerPimpl(jami::Manager&) /home/sblin/ring-project/daemon/src/manager.cpp:447
    #4 0x55a4102a4a26 in jami::Manager::Manager() /home/sblin/ring-project/daemon/src/manager.cpp:726
    #5 0x55a4102a47ed in jami::Manager::instance() /home/sblin/ring-project/daemon/src/manager.cpp:702
    #6 0x55a40fe5b7ad in DRing::init(DRing::InitFlag) /home/sblin/ring-project/daemon/src/ring_api.cpp:57
    #7 0x55a40fd34c1f in DBusClient::initLibrary(int) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:245
    #8 0x55a40fd297a1 in DBusClient::DBusClient(int, bool) /home/sblin/ring-project/daemon/bin/dbus/dbusclient.cpp:108
    #9 0x55a40fd28eaf in void __gnu_cxx::new_allocator<DBusClient>::construct<DBusClient, int&, bool&>(DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x398eaf)
    #10 0x55a40fd28c73 in void std::allocator_traits<std::allocator<DBusClient> >::construct<DBusClient, int&, bool&>(std::allocator<DBusClient>&, DBusClient*, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x398c73)
    #11 0x55a40fd288a4 in std::_Sp_counted_ptr_inplace<DBusClient, std::allocator<DBusClient>, (__gnu_cxx::_Lock_policy)2>::_Sp_counted_ptr_inplace<int&, bool&>(std::allocator<DBusClient>, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x3988a4)
    #12 0x55a40fd2826a in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<DBusClient, std::allocator<DBusClient>, int&, bool&>(DBusClient*&, std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x39826a)
    #13 0x55a40fd27dbd in std::__shared_ptr<DBusClient, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x397dbd)
    #14 0x55a40fd2727e in std::shared_ptr<DBusClient>::shared_ptr<std::allocator<DBusClient>, int&, bool&>(std::_Sp_alloc_shared_tag<std::allocator<DBusClient> >, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x39727e)
    #15 0x55a40fd267ae in std::shared_ptr<DBusClient> std::allocate_shared<DBusClient, std::allocator<DBusClient>, int&, bool&>(std::allocator<DBusClient> const&, int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x3967ae)
    #16 0x55a40fd25dde in std::shared_ptr<DBusClient> std::make_shared<DBusClient, int&, bool&>(int&, bool&) (/home/sblin/ring-project/daemon/bin/dring+0x395dde)
    #17 0x55a40fd24b51 in main /home/sblin/ring-project/daemon/bin/main.cpp:218
    #18 0x7fc6360200b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x270b2)

SUMMARY: AddressSanitizer: double-free (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1108df) in operator delete(void*)
==2090849==ABORTING
Assignee
Assign to
Iteration 24
Milestone
Iteration 24 (Past due)
Assign milestone
Time tracking
None
Due date
None
Reference: savoirfairelinux/ring-daemon#359