[openi18n-im:01102] Re: report on unitLE crashes
Hideki Hiura <[email protected]>
| Newsgroups | gmane.comp.internationalization.input-methods |
|---|---|
| Message-ID | <[email protected]> |
Leon, > From: Leon Ho <[email protected]> > Anyone see this segfault from unitLE? This happens when starts loading > or switching to unitLE (i.e. LANG=bn_IN.UTF-8 gedit) This seems to be memery trashing, so the trashing might happen somewhere before. So we linked htt_server with efence to trace this problem, and efence caught the suspected memory trash when we switched between xcin and unit. As you know the efence detects the memory overrun or accessing to the already freed memory by causing segfault, so this does not happen if you don't link with efence. So it seems that we need to check the validity of the arguments passed all the way to match_keystroke(). I'm not sure if this is the reason, but if there is a memory trashing in xcin, and crashing in unit happens when you switch from xcin to unit, it explains that we have not seen til you've reported , as we did not test with the xcin module before....but they can be totally different two problems :-). Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1104403376 (LWP 31007)] 0x40339173 in memmove () from /lib/tls/libc.so.6 (gdb) where 10 #0 0x40339173 in memmove () from /lib/tls/libc.so.6 #1 0x41a0cfae in match_keystroke (cf=0x4c233000, inpinfo=0x4c237000, iccf=0x4ce16000) at gen_inp.c:153 #2 0x41a0fa4f in receive_keylist (s=0x4b9c4000, keylist=0xf46f5000) at key_event.c:271 #3 0x41a0c1e2 in if_xcin_SendEvent (s=Variable "s" is not available. ) at xcin.c:674 #4 0x08089b23 in if_SendEvent (s=0x4b9c4000, e=0x41d3d940) at SunIM.c:472 #5 0x0806e76d in LEContext::send_event (this=0x4b9b8000, pimlex=0x4204d000, pimevent=0x41d3d940) at LE.cpp:396 #6 0x080730a5 in IMInputContext::send_event (this=0x4204b000, pimlex=0x4204d000, pimevent=0x41d3d940) at IMInputContext.cpp:117 #7 0x0807fa3b in IIIMP_ICState_REQUESTED::forward_event (this=0x4ce14000, pmes=0x4ce0c000) at IIIMP_ICState.cpp:650 #8 0x0807d465 in IIIMP_ICState::message_proc (this=0x4204f000, x_pmes=0x4ce0c000) at IIIMP_ICState.cpp:79 #9 0x080773bd in ICState::deliver (this=0x4204f000, message=0x4ce0c000) at ICState.cpp:17