Package: scim-bridge-agent
Version: 0.4.16-2
Severity: normal
Tags: patch

scim-bridge crashes a lot when using webkit based applications like
devhelp(webkit version),
midori and google chrome.while these apps work fine with scim-gtk2-immodule.
with google chrome,it only occurs with most recently built chrome.It
maybe caused
by some bugs in webkit?

here's related config:
    XIM=SCIM
    GTK_IM_MODULE=scim-bridge
    QT_IM_MODULE=scim-bridge
    XMODIFIERS="@im=SCIM"
    export XIM GTK_IM_MODULE QT_IM_MODULE XMODIFIERS

here is the backtrace when I'm running midori,attach the scim-bridge process
and then start midori and click on the "click to add shortcut" in the midori
speed-dial page,then scim-bridge recieves   SIGSEGV while calling
get_frontend_data ()  .

dar...@debian:~$ ps aux |grep scim-bridge
darren     30644  0.0  0.0   7824   884 pts/1    S+   05:29   0:00 scim-bridge

(gdb) attach 30644
Attaching to process 30644
Reading symbols from /usr/bin/scim-bridge...done.
warning: .dynamic section for "/usr/lib/libscim-1.0.so.8" is not at
the expected address
warning: difference appears to be caused by prelink, adjusting expectations
Reading symbols from /usr/lib/libscim-1.0.so.8...done.
Loaded symbols for /usr/lib/libscim-1.0.so.8
Reading symbols from /lib/i686/cmov/libdl.so.2...done.
Loaded symbols for /lib/i686/cmov/libdl.so.2
Reading symbols from /usr/lib/libstdc++.so.6...done.
Loaded symbols for /usr/lib/libstdc++.so.6
Reading symbols from /lib/i686/cmov/libm.so.6...done.
Loaded symbols for /lib/i686/cmov/libm.so.6
Reading symbols from /lib/libgcc_s.so.1...done.
Loaded symbols for /lib/libgcc_s.so.1
Reading symbols from /lib/i686/cmov/libc.so.6...done.
Loaded symbols for /lib/i686/cmov/libc.so.6
Reading symbols from /lib/ld-linux.so.2...done.
Loaded symbols for /lib/ld-linux.so.2
Reading symbols from /lib/i686/cmov/libnss_compat.so.2...done.
Loaded symbols for /lib/i686/cmov/libnss_compat.so.2
Reading symbols from /lib/i686/cmov/libnsl.so.1...done.
Loaded symbols for /lib/i686/cmov/libnsl.so.1
Reading symbols from /lib/i686/cmov/libnss_nis.so.2...done.
Loaded symbols for /lib/i686/cmov/libnss_nis.so.2
Reading symbols from /lib/i686/cmov/libnss_files.so.2...done.
Loaded symbols for /lib/i686/cmov/libnss_files.so.2
Reading symbols from /usr/lib/scim-1.0/1.4.0/Config/socket.so...done.
Loaded symbols for /usr/lib/scim-1.0/1.4.0/Config/socket.so
Reading symbols from /usr/lib/scim-1.0/1.4.0/IMEngine/socket.so...done.
Loaded symbols for /usr/lib/scim-1.0/1.4.0/IMEngine/socket.so
0xb8067424 in __kernel_vsyscall ()
(gdb) c
Continuing.

Program received signal SIGSEGV, Segmentation fault.
0xb7fd612c in std::_Rb_tree<std::string, std::pair<std::string const,
std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > >,
std::_Select1st<std::pair<std::string const,
std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >
>::_M_insert_unique_(std::_Rb_tree_const_iterator<std::pair<std::string
const, std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >,
std::pair<std::string const, std::vector<std::pair<unsigned int,
std::string>, std::allocator<std::pair<unsigned int, std::string> > >
> const&)
    () from /usr/lib/libscim-1.0.so.8
(gdb) bt
#0  0xb7fd612c in std::_Rb_tree<std::string, std::pair<std::string
const, std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > >,
std::_Select1st<std::pair<std::string const,
std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >,
std::less<std::string>, std::allocator<std::pair<std::string const,
std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >
>::_M_insert_unique_(std::_Rb_tree_const_iterator<std::pair<std::string
const, std::vector<std::pair<unsigned int, std::string>,
std::allocator<std::pair<unsigned int, std::string> > > > >,
std::pair<std::string const, std::vector<std::pair<unsigned int,
std::string>, std::allocator<std::pair<unsigned int, std::string> > >
> const&) () from /usr/lib/libscim-1.0.so.8
#1  0x0805aacf in ScimBridgeAgentIMContextImpl::focus_out
(this=0x8d3dc10) at scim-bridge-agent-imcontext.cpp:657
#2  0x080503d2 in ScimBridgeAgentImpl::change_focus (this=0x8d35b18,
imcontext_id=8, focus_in=false) at scim-bridge-agent.cpp:630
#3  0x08054f2c in ScimBridgeAgentClientListenerImpl::change_focus
(this=0x8d3aec0, imcontext_id=8, focus_in=false) at
scim-bridge-agent-client-listener.cpp:449
#4  0x08055762 in ScimBridgeAgentClientListenerImpl::process_message
(this=0x8d3aec0, message=0x8d3c280) at
scim-bridge-agent-client-listener.cpp:263
#5  0x0805688a in ScimBridgeAgentClientListenerImpl::handle_event
(this=0x8d3aec0, event_type=8) at
scim-bridge-agent-client-listener.cpp:171
#6  0x08050b10 in ScimBridgeAgentImpl::run_event_loop (this=0x8d35b18)
at scim-bridge-agent.cpp:319
#7  0x08050d48 in ScimBridgeAgentImpl::launch (this=0x8d35b18) at
scim-bridge-agent.cpp:360
#8  0x0804f77d in main (argc=1, argv=0xbfc9a2c4) at
scim-bridge-agent-application.cpp:119
(gdb) c
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.




-- System Information:
Debian Release: squeeze/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)

Kernel: Linux 2.6.30-1-686 (SMP w/2 CPU cores)
Locale: LANG=zh_CN.UTF-8, LC_CTYPE=zh_CN.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages scim-bridge-agent depends on:
ii  libc6                         2.9-20     GNU C Library: Shared libraries
ii  libgcc1                       1:4.4.0-11 GCC support library
ii  libscim8c2a                   1.4.9-1    library for SCIM platform
ii  libstdc++6                    4.4.0-11   The GNU Standard C++ Library v3
ii  scim                          1.4.9-1    smart common input method platform
ii  scim-modules-socket           1.4.9-1    socket modules for SCIM platform

Versions of packages scim-bridge-agent recommends:
ii  scim-bridge-client-gtk        0.4.16-2   IME server of scim-bridge communic

scim-bridge-agent suggests no packages.
--- scim-bridge-0.4.16/agent/scim-bridge-agent-imcontext.cpp	2009-02-03 22:36:14.000000000 +0800
+++ scim-bridge-0.4.16.new/agent/scim-bridge-agent-imcontext.cpp	2009-07-18 18:14:33.000000000 +0800
@@ -654,11 +654,11 @@
 
 void ScimBridgeAgentIMContextImpl::focus_out ()
 {
-    ScimBridgeAgentIMContext *focused_imcontext = static_cast<ScimBridgeAgentIMContext*> (get_imengine ()->get_frontend_data ());
-
 	if ( !focused )
          return;
 
+    ScimBridgeAgentIMContext *focused_imcontext = static_cast<ScimBridgeAgentIMContext*> (get_imengine ()->get_frontend_data ());
+
     get_imengine ()->set_frontend_data (static_cast<ScimBridgeAgentIMContext*> (this));
 
     hide_preedit ();

Reply via email to