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