On Sep 20, 2005, at 6:16 AM, Andreas Vox wrote:

What about this patch:

Index: src/frontends/qt2/QLyXKeySym.C
==========================
RCS file: /var/cvs/lyx/lyx-devel/src/frontends/qt2/QLyXKeySym.C,v
retrieving revision 1.34
diff -u -p -r1.34 QLyXKeySym.C
--- src/frontends/qt2/QLyXKeySym.C 17 Jul 2005 11:58:54 -0000 1.34
+++ src/frontends/qt2/QLyXKeySym.C      20 Sep 2005 10:13:45 -0000
@@ -93,6 +93,7 @@ void initEncodings()
        string::size_type i = s.find(".");
        s = s.substr(0, i);

+       encoding_map["C"] = QTextCodec::codecForName("Latin-1");
encoding_map["iso8859-1"] = QTextCodec::codecForName("ISO 8859-1"); encoding_map["iso8859-2"] = QTextCodec::codecForName("ISO 8859-2"); encoding_map["iso8859-3"] = QTextCodec::codecForName("ISO 8859-3");


I wasn't sure whether this was supposed to be applied on top of Jean- Marc's encoding.diff or not, so I tried it both ways with the same results. (See the backtrace below.)

Bennett


Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000000
(anonymous namespace)::encode ([EMAIL PROTECTED], [EMAIL PROTECTED]) at QLyXKeySym.C:59
59              if (!codec->canEncode(str)) {
(gdb) bt
#0 (anonymous namespace)::encode ([EMAIL PROTECTED], [EMAIL PROTECTED]) at QLyXKeySym.C:59 #1 0x0016886c in QLyXKeySym::getISOEncoded (this=0xb92c7b0, [EMAIL PROTECTED]) at QLyXKeySym.C:201 #2 0x00063a10 in LyXFunc::processKeySym (this=0xb950260, keysym={px = 0xbfffe300, pn = {pi_ = 0x3}}, state=ctrl) at ../boost/boost/ shared_ptr.hpp:252 #3 0x00008c3c in BufferView::Pimpl::workAreaKeyPress (this=0xb9509c0, key={px = 0x0, pn = {pi_ = 0x94ab1c}}, state=none) at frontends/LyXView.h:83 #4 0x0064fd48 in boost::detail::function::void_function_obj_invoker2<boost::_bi::bind_t<v oid, boost::_mfi::mf2<void, BufferView::Pimpl, boost::shared_ptr<LyXKeySym>, key_modifier::state>, boost::_bi::list3<boost::_bi::value<BufferView::Pimpl*>, boost::arg<1>, boost::arg<2> > >, void, boost::shared_ptr<LyXKeySym>, key_modifier::state>::invoke (function_obj_ptr={obj_ptr = 0x94869c, const_obj_ptr = 0x94869c, func_ptr = 0x94869c <std::string::_S_empty_rep_storage+12>, data = ""}, a0=Cannot access memory at address 0x0
) at ../boost/boost/detail/shared_count.hpp:124
#5 0x00875bcc in boost::function2<void, boost::shared_ptr<LyXKeySym>, key_modifier::state, std::allocator<void> >::operator() () at ../../../boost/boost/ function/function_template.hpp:581 #6 0x00875804 in boost::signals::detail::call_bound2<void>::caller<boost::shared_ptr<LyXK eySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >::operator() <boost::signals::detail::connection_slot_pair> (this=0xbfffe798, [EMAIL PROTECTED]) at ../../../boost/boost/signals/signal_template.hpp:119 #7 0x008754ec in boost::signals::detail::slot_call_iterator<boost::signals::detail::call_ bound2<void>::caller<boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>::dereference (this=0xbfffe790) at ../../../boost/boost/signals/detail/ slot_call_iterator.hpp:68 #8 0x0087500c in boost::iterator_core_access::dereference<boost::signals::detail::slot_ca ll_iterator<boost::signals::detail::call_bound2<void>::caller<boost::sha red_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator> > ([EMAIL PROTECTED]) at ../../../boost/boost/iterator/iterator_facade.hpp:516 #9 0x0087496c in boost::iterator_facade<boost::signals::detail::slot_call_iterator<boost: :signals::detail::call_bound2<void>::caller<boost::shared_ptr<LyXKeySym> , key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>, boost::signals::detail::unusable, boost::single_pass_traversal_tag, boost::signals::detail::unusable const&, int>::operator* (this=0xbfffe790) at ../../../boost/boost/iterator/ iterator_facade.hpp:634 #10 0x00873fa8 in boost::detail::postfix_increment_proxy<boost::signals::detail::slot_call _iterator<boost::signals::detail::call_bound2<void>::caller<boost::share d_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator> >::postfix_increment_proxy (this=0xbfffe6f0, [EMAIL PROTECTED]) at ../../../boost/boost/iterator/iterator_facade.hpp:144 #11 0x00873f70 in boost::detail::postfix_increment_proxy<boost::signals::detail::slot_call _iterator<boost::signals::detail::call_bound2<void>::caller<boost::share d_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator> >::postfix_increment_proxy (this=0xbfffe6f0, [EMAIL PROTECTED]) at ../../../boost/boost/iterator/iterator_facade.hpp:144 #12 0x008736c8 in boost::operator+ +<boost::signals::detail::slot_call_iterator<boost::signals::detail::cal l_bound2<void>::caller<boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>, boost::signals::detail::unusable, boost::single_pass_traversal_tag, boost::signals::detail::unusable const&, int> ([EMAIL PROTECTED]) at ../../../boost/boost/iterator/iterator_facade.hpp:732 #13 0x00872ac0 in boost::last_value<void>::operator() <boost::signals::detail::slot_call_iterator<boost::signals::detail::call _bound2<void>::caller<boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator> > (this=0xb94c904, first= {<iterator_facade<boost::signals::detail::slot_call_iterator<boost::sign als::detail::call_bound2<void>::caller<boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>,boost::signals::detail: :unusable,boost::single_pass_traversal_tag,const boost::signals::detail::unusable&,int>> = {<No data fields>}, iter = {<iterator_facade<boost::signals::detail::named_slot_map_iterator,boost: :signals::detail::connection_slot_pair,boost::forward_traversal_tag,boos t::signals::detail::connection_slot_pair&,int>> = {<No data fields>}, impl_ = {ptr = 0xb9484a0}}, end = {<iterator_facade<boost::signals::detail::named_slot_map_iterator,boost: :signals::detail::connection_slot_pair,boost::forward_traversal_tag,boos t::signals::detail::connection_slot_pair&,int>> = {<No data fields>}, impl_ = {ptr = 0xb9484b0}}, f = {args = 0xbfffe760}, cache = {px = 0x0, pn = {pi_ = 0x0}}}, last= {<iterator_facade<boost::signals::detail::slot_call_iterator<boost::sign als::detail::call_bound2<void>::caller<boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::function<void () (boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >, boost::signals::detail::named_slot_map_iterator>,boost::signals::detail: :unusable,boost::single_pass_traversal_tag,const boost::signals::detail::unusable&,int>> = {<No data fields>}, iter = {<iterator_facade<boost::signals::detail::named_slot_map_iterator,boost: :signals::detail::connection_slot_pair,boost::forward_traversal_tag,boos t::signals::detail::connection_slot_pair&,int>> = {<No data fields>}, impl_ = {ptr = 0xf68d910}}, end = {<iterator_facade<boost::signals::detail::named_slot_map_iterator,boost: :signals::detail::connection_slot_pair,boost::forward_traversal_tag,boos t::signals::detail::connection_slot_pair&,int>> = {<No data fields>}, impl_ = {ptr = 0xf68d920}}, f = {args = 0xbfffe760}, cache = {px = 0x0, pn = {pi_ = 0x0}}}) at ../../../boost/boost/last_value.hpp:43 #14 0x008718b8 in boost::signal2<void, boost::shared_ptr<LyXKeySym>, key_modifier::state, boost::last_value<void>, int, std::less<int>, boost::function<void ()(boost::shared_ptr<LyXKeySym>, key_modifier::state), std::allocator<void> > >::operator() (this=0xb950b14, a1={px = 0xf66c2a0, pn = {pi_ = 0x0}}, a2=ctrl) at ../../../boost/boost/signals/signal_template.hpp:347 #15 0x0034613c in QContentPane::keyeventTimeout (this=0xb9512c0) at QContentPane.C:279 #16 0x0043fe20 in QContentPane::qt_invoke (this=0xb9512c0, _id=47, _o=0xbfffe9d0) at QContentPane_moc.C:91 #17 0x001cfcb8 in QObject::activate_signal () at ControlCommandBuffer.C:137 #18 0x001cfba0 in QObject::activate_signal () at ControlCommandBuffer.C:137
#19 0x002db760 in QTimer::event () at lengthcombo.C:70
#20 0x001b8d14 in QApplication::internalNotify () at qt_helpers.C:203
#21 0x001b890c in QApplication::notify () at qt_helpers.C:203
#22 0x0034c85c in QEventLoop::macHandleTimer () at QAskForTextDialog.C:87 #23 0x002207d4 in QApplication::globalEventProcessor () at lcolorcache.C:40
#24 0x931288d4 in DispatchEventToHandlers ()
#25 0x9312802c in SendEventToEventTargetInternal ()
#26 0x93127ea8 in SendEventToEventTargetWithOptions ()
#27 0x9312f1ec in ToolboxEventDispatcherHandler ()
#28 0x93128b24 in DispatchEventToHandlers ()
#29 0x9312802c in SendEventToEventTargetInternal ()
#30 0x9312edb0 in SendEventToEventTarget ()
#31 0x0021ff78 in qt_mac_send_event () at lcolorcache.C:40
#32 0x0034d76c in QEventLoop::processEvents () at QAskForTextDialog.C:87
#33 0x0032a8d4 in QEventLoop::enterLoop () at lengthcombo.C:70
#34 0x0032a7c0 in QEventLoop::exec () at lengthcombo.C:70
#35 0x00162970 in lyx_gui::start ([EMAIL PROTECTED], [EMAIL PROTECTED]) at lyx_gui.C:253 #36 0x00059770 in LyX::priv_exec (this=0xb906e60, [EMAIL PROTECTED], argv=0xbffff830) at lyx_main.C:282 #37 0x00058ba4 in LyX::exec ([EMAIL PROTECTED], argv=0xbffff830) at lyx_main.C:143
#38 0x000024d0 in main (argc=1, argv=0xbffff830) at main.C:47

Reply via email to