[Ekiga-devel-list] segfault from Ekiga::Device::GetString



I tried ptlib/opal/ekiga from their trunk/master repositories (fetched
last night) and I'm getting the following segfault on trying to start
ekiga:

#0  0x00da6195 in std::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::string const&) () from /usr/lib/libstdc++.so.6
#1  0x009404ef in operator+<char, std::char_traits<char>, std::allocator<char> > (this=0x0) at /usr/include/c++/4.4/bits/basic_string.h:2204
#2  Ekiga::Device::GetString (this=0x0)
    at ../lib/engine/framework/device-def.h:87
#3  0x0094f464 in Ekiga::AudioOutputCoreConfBridge::on_property_changed (
    this=0x8fc64e8, key=..., entry=0x8fc5e90)
    at ../lib/engine/audiooutput/audiooutput-gmconf-bridge.cpp:99
#4  0x0095009a in boost::_mfi::mf2<void, Ekiga::AudioOutputCoreConfBridge, std::string, _GmConfEntry*>::operator() (function_obj_ptr=..., a0=..., a1=0x8fc5e90)
    at /usr/include/boost/bind/mem_fn_template.hpp:274
#5  operator()<boost::_mfi::mf2<void, Ekiga::AudioOutputCoreConfBridge, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*>, boost::_bi::list2<std::basic_string<char, std::char_traits<char>, std::allocator<char> >&, GmConfEntry*&> > (function_obj_ptr=..., a0=..., a1=0x8fc5e90)
    at /usr/include/boost/bind.hpp:371
#6  operator()<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*> (function_obj_ptr=..., a0=..., a1=0x8fc5e90)
    at /usr/include/boost/bind/bind_template.hpp:61
#7  boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<void, boost::_mfi::mf2<void, Ekiga::AudioOutputCoreConfBridge, std::string, _GmConfEntry*>, boost::_bi::list3<boost::_bi::value<Ekiga::AudioOutputCoreConfBridge*>, boost::arg<1>, boost::arg<2> > >, void, std::string, _GmConfEntry*>::invoke (
    function_obj_ptr=..., a0=..., a1=0x8fc5e90)
    at /usr/include/boost/function/function_template.hpp:152
#8  0x008eda4f in boost::function2<void, std::string, _GmConfEntry*>::operator() (this=0x8df1d7c, a0=..., a1=0x8fc5e90)
    at /usr/include/boost/function/function_template.hpp:989
#9  0x008ee2c7 in operator()<boost::signals::detail::connection_slot_pair> (
    this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/signals/signal_template.hpp:119
#10 boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<std::string, _GmConfEntry*, boost::function2<void, std::string, _GmConfEntry*> >, boost::signals::detail::named_slot_map_iterator>::dereference (this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/signals/detail/slot_call_iterator.hpp:61
#11 dereference<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*, boost::function2<void, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*> >, boost::signals::detail::named_slot_map_iterator> > (this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/iterator/iterator_facade.hpp:516
#12 boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<std::string, _GmConfEntry*, boost::function2<void, std::string, _GmConfEntry*> >, boost::signals::detail::named_slot_map_iterator>, boost::signals::detail::unusable, boost::single_pass_traversal_tag, boost::signals::detail::unusable const&, int>::operator* (this=0x8fc64e8, 
    a1=..., a2=0x8fc5e90)
    at /usr/include/boost/iterator/iterator_facade.hpp:634
#13 postfix_increment_proxy (this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/iterator/iterator_facade.hpp:144
#14 operator++<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*, boost::function2<void, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*> >, boost::signals::detail::named_slot_map_iterator>, boost::signals::detail::unusable, boost::single_pass_traversal_tag, const boost::signals::detail::unusable&, int> (
    this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/iterator/iterator_facade.hpp:732
#15 operator()<boost::signals::detail::slot_call_iterator<boost::signals::detail::call_bound2<void>::caller<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*, boost::function2<void, std::basic_string<char, std::char_traits<char>, std::allocator<char> >, GmConfEntry*> >, boost::signals::detail::named_slot_map_iterator> > (this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/last_value.hpp:49
#16 boost::signal2<void, std::string, _GmConfEntry*, boost::last_value<void>, int, std::less<int>, boost::function2<void, std::string, _GmConfEntry*> >::operator() (this=0x8fc64e8, a1=..., a2=0x8fc5e90)
    at /usr/include/boost/signals/signal_template.hpp:354
#17 0x008ed320 in entry_changed_nt (entry=0x8fc5e90, data=0x8fc64e8)
    at ../lib/engine/framework/gmconf-bridge.cpp:59
#18 0x008cfb4f in gconf_notifier_wrapper_trigger (client_=0x8cdf650, 
    identifier=2868903982, entry=0x8fc5e90, user_data=0x8)
    at ../lib/gmconf/gmconf-gconf.c:117
#19 0x00bcf64c in ?? () from /usr/lib/libgconf-2.so.4
#20 0x00bbf630 in gconf_listeners_notify () from /usr/lib/libgconf-2.so.4
#21 0x00bcd484 in ?? () from /usr/lib/libgconf-2.so.4
#22 0x00bcf56f in gconf_client_notify () from /usr/lib/libgconf-2.so.4
#23 0x008cfd0b in gm_conf_notifier_trigger (
    namespac=0x8fc5524 "/apps/ekiga/devices/audio/output_device")
    at ../lib/gmconf/gmconf-gconf.c:412
#24 0x008ed2ad in Ekiga::ConfBridge::load (this=0x8fc64e8, keys=...)
    at ../lib/engine/framework/gmconf-bridge.cpp:70
#25 0x0094d35f in AudioOutputCoreConfBridge (this=0x8fc64e8, _service=...)
    at ../lib/engine/audiooutput/audiooutput-gmconf-bridge.cpp:67
#26 0x009448e1 in Ekiga::AudioOutputCore::setup_conf_bridge (this=0x8d24778)
    at ../lib/engine/audiooutput/audiooutput-core.cpp:89
#27 0x008e7aa6 in engine_init (service_core=..., argc=1, argv=0xbfa9dd14)
    at ../lib/engine/engine.cpp:231
#28 0x0808e0e6 in main (argc=1, argv=0xbfa9dd14) at gui/main_window.cpp:4489

Any thoughts on further debugging?  Although I am comfortable with C and
somewhat proficient with gdb, I'm not much at all of a C++ programmer.

Cheers,
b.

Attachment: signature.asc
Description: This is a digitally signed message part



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]