Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • biboumi biboumi
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Graph
    • Compare
  • Issues 100
    • Issues 100
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 12
    • Merge requests 12
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • louiz’
  • biboumibiboumi
  • Issues
  • #3243
Closed
Open
Issue created Mar 07, 2017 by louiz’@louizOwner

Segfault in leave_irc_channel

/home/eijebong/biboumi/src/bridge/bridge.cpp:443:41: runtime error: reference binding to null pointer of type 'const struct basic_string'
ASAN:DEADLYSIGNAL
=================================================================
==30363==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x7f1392b7e4fb bp 0x7ffc84d03920 sp 0x7ffc84d03748 T0)
    #0 0x7f1392b7e4fa in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data() /build/gcc-multilib/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:142
    #1 0x7f1392b7e4fa in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /build/gcc-multilib/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:399
    #2 0x6cf4b8 in Bridge::leave_irc_channel(Iid&&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/eijebong/biboumi/src/bridge/bridge.cpp:443
    #3 0x6c014b in Bridge::remove_resource(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&) /home/eijebong/biboumi/src/bridge/bridge.cpp:79
    #4 0x564204 in BiboumiComponent::handle_message(XmlNode const&) /home/eijebong/biboumi/src/xmpp/biboumi_component.cpp:241
    #5 0x5d5648 in void std::__invoke_impl<void, void (BiboumiComponent::* const&)(XmlNode const&), BiboumiComponent*&, XmlNode const&>(std::__invoke_memfun_deref, void (BiboumiComponent::* const&)(XmlNode const&), BiboumiComponent*&, XmlNode const&) (/home/eijebong/biboumi/biboumi+0x5d5648)
    #6 0x5d50f8 in std::result_of<void (BiboumiComponent::* const&(BiboumiComponent*&, XmlNode const&))(XmlNode const&)>::type std::__invoke<void (BiboumiComponent::* const&)(XmlNode const&), BiboumiComponent*&, XmlNode const&>(void (BiboumiComponent::* const&)(XmlNode const&), BiboumiComponent*&, XmlNode const&) (/home/eijebong/biboumi/biboumi+0x5d50f8)
    #7 0x5d4e1e in decltype (__invoke((*this)._M_pmf, (forward<BiboumiComponent*&>)({parm#1}), (forward<XmlNode const&>)({parm#1}))) std::_Mem_fn_base<void (BiboumiComponent::*)(XmlNode const&), true>::operator()<BiboumiComponent*&, XmlNode const&>(BiboumiComponent*&, XmlNode const&) const (/home/eijebong/biboumi/biboumi+0x5d4e1e)
    #8 0x5d4906 in void std::_Bind<std::_Mem_fn<void (BiboumiComponent::*)(XmlNode const&)> (BiboumiComponent*, std::_Placeholder<1>)>::__call<void, XmlNode const&, 0ul, 1ul>(std::tuple<XmlNode const&>&&, std::_Index_tuple<0ul, 1ul>) (/home/eijebong/biboumi/biboumi+0x5d4906)
    #9 0x5d38ab in void std::_Bind<std::_Mem_fn<void (BiboumiComponent::*)(XmlNode const&)> (BiboumiComponent*, std::_Placeholder<1>)>::operator()<XmlNode const&, void>(XmlNode const&) (/home/eijebong/biboumi/biboumi+0x5d38ab)
    #10 0x5d1127 in std::_Function_handler<void (XmlNode const&), std::_Bind<std::_Mem_fn<void (BiboumiComponent::*)(XmlNode const&)> (BiboumiComponent*, std::_Placeholder<1>)> >::_M_invoke(std::_Any_data const&, XmlNode const&) (/home/eijebong/biboumi/biboumi+0x5d1127)
    #11 0x7c6e8a in std::function<void (XmlNode const&)>::operator()(XmlNode const&) const /usr/include/c++/6.3.1/functional:2127
    #12 0x7a19bd in XmppComponent::on_stanza(XmlNode const&) /home/eijebong/biboumi/louloulibs/xmpp/xmpp_component.cpp:171
    #13 0x7d250d in void std::__invoke_impl<void, void (XmppComponent::* const&)(XmlNode const&), XmppComponent*&, XmlNode const&>(std::__invoke_memfun_deref, void (XmppComponent::* const&)(XmlNode const&), XmppComponent*&, XmlNode const&)/usr/include/c++/6.3.1/functional:227
    #14 0x7d0c91 in std::result_of<void (XmppComponent::* const&(XmppComponent*&, XmlNode const&))(XmlNode const&)>::type std::__invoke<void (XmppComponent::* const&)(XmlNode const&), XmppComponent*&, XmlNode const&>(void (XmppComponent::*const&)(XmlNode const&), XmppComponent*&, XmlNode const&) /usr/include/c++/6.3.1/functional:251
    #15 0x7cfed6 in decltype (__invoke((*this)._M_pmf, (forward<XmppComponent*&>)({parm#1}), (forward<XmlNode const&>)({parm#1}))) std::_Mem_fn_base<void (XmppComponent::*)(XmlNode const&), true>::operator()<XmppComponent*&, XmlNode const&>(XmppComponent*&, XmlNode const&) const /usr/include/c++/6.3.1/functional:604
    #16 0x7cd9de in void std::_Bind<std::_Mem_fn<void (XmppComponent::*)(XmlNode const&)> (XmppComponent*, std::_Placeholder<1>)>::__call<void, XmlNode const&,0ul, 1ul>(std::tuple<XmlNode const&>&&, std::_Index_tuple<0ul, 1ul>) /usr/include/c++/6.3.1/functional:934
    #17 0x7cae5f in void std::_Bind<std::_Mem_fn<void (XmppComponent::*)(XmlNode const&)> (XmppComponent*, std::_Placeholder<1>)>::operator()<XmlNode const&, void>(XmlNode const&) /usr/include/c++/6.3.1/functional:993
    #18 0x7c85a3 in std::_Function_handler<void (XmlNode const&), std::_Bind<std::_Mem_fn<void (XmppComponent::*)(XmlNode const&)> (XmppComponent*, std::_Placeholder<1>)> >::_M_invoke(std::_Any_data const&, XmlNode const&) /usr/include/c++/6.3.1/functional:1731
    #19 0x7c6e8a in std::function<void (XmlNode const&)>::operator()(XmlNode const&) const /usr/include/c++/6.3.1/functional:2127
    #20 0x7d505b in XmppParser::stanza_event(XmlNode const&) const /home/eijebong/biboumi/louloulibs/xmpp/xmpp_parser.cpp:140
    #21 0x7d484a in XmppParser::end_element(char const*) /home/eijebong/biboumi/louloulibs/xmpp/xmpp_parser.cpp:118
    #22 0x7d261f in end_element_handler /home/eijebong/biboumi/louloulibs/xmpp/xmpp_parser.cpp:18
    #23 0x7f1393c9ee2a  (/usr/lib/libexpat.so.1+0x8e2a)
    #24 0x7f1393c9f7db  (/usr/lib/libexpat.so.1+0x97db)
    #25 0x7f1393ca3b0e in XML_ParseBuffer (/usr/lib/libexpat.so.1+0xdb0e)
    #26 0x7d32c4 in XmppParser::parse(int, bool) /home/eijebong/biboumi/louloulibs/xmpp/xmpp_parser.cpp:66
    #27 0x7a02c2 in XmppComponent::parse_in_buffer(unsigned long) /home/eijebong/biboumi/louloulibs/xmpp/xmpp_component.cpp:125
    #28 0x8da6e8 in TCPSocketHandler::plain_recv() /home/eijebong/biboumi/louloulibs/network/tcp_socket_handler.cpp:96
    #29 0x8d9edc in TCPSocketHandler::on_recv() /home/eijebong/biboumi/louloulibs/network/tcp_socket_handler.cpp:73
    #30 0x89f429 in Poller::poll(std::chrono::duration<long, std::ratio<1l, 1000l> > const&) /home/eijebong/biboumi/louloulibs/network/poller.cpp:216
    #31 0x5367d1 in main /home/eijebong/biboumi/src/main.cpp:143
    #32 0x7f13923d6290 in __libc_start_main (/usr/lib/libc.so.6+0x20290)
    #33 0x533b19 in _start (/home/eijebong/biboumi/biboumi+0x533b19)

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV /build/gcc-multilib/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/bits/basic_string.h:142 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_local_data()
==30363==ABORTING
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking