GNOME Bugzilla – Bug 134800
gnome-termnal hung up when input by ATOK
Last modified: 2006-07-19 20:30:39 UTC
Distribution: TurboLinux Turbolinux Desktop 10.0 (Suzuka) Package: gnome-terminal Severity: normal Version: GNOME2.4.0 2.4.0.1 Gnome-Distributor: GNOME.Org Synopsis: gnome-termnal hung up when input by ATOK Bugzilla-Product: gnome-terminal Bugzilla-Component: general Bugzilla-Version: 2.4.0.1 BugBuddy-GnomeVersion: 2.0 (2.4.0.1) Description: Description of the crash: Steps to reproduce the crash: 1. 2. 3. Expected Results: How often does this happen? Additional Information: Debugging Information: Backtrace was generated from '/usr/bin/gnome-terminal' (no debugging symbols found)...[New Thread 16384 (LWP 5585)] 0x40508e48 in waitpid () from /lib/libpthread.so.0
+ Trace 44343
Thread 1 (Thread 16384 (LWP 5585))
------- Bug moved to this database by unknown@bugzilla.gnome.org 2004-02-18 21:30 ------- Unknown version 2.4.0.1 in product gnome-terminal. Setting version to the default, "unspecified". The original reporter (kiku@nobworks.co.jp) of this bug does not have an account here. Reassigning to the exporter, unknown@bugzilla.gnome.org. Reassigning to the default owner of the component, gnome-terminal-maint@bugzilla.gnome.org.
This appears to be a unique stack trace, according to the simple-dup-finder. I'm moving to vte based on the stack trace and setting some fields appropriately.
*** Bug 144317 has been marked as a duplicate of this bug. ***
Same bug with same backtrace happen on im-canna and normal im-xim module. There is a trivial mistake in vte/src/vte.c, it refers NULL pointer. Generally, immodule reset function clears preedit string. (It depends on immodules implementation. Some immodules don't have reset function) So then, it emits "preedit_changed" signal. vte catch it and invoke vte_terminal_im_preedit_changed(), at
+ Trace 49744
This happens in vte_terminal_unrealize() in vte.c. It frees terminal->pvt->draw and set NULL to it before it calls vte_terminal_im_reset(). The patch is attached.
Created attachment 31077 [details] [review] The patch is to src/vte.c This patch is for FC2 vte-0.11.10-5.1 package and I confirmed it is applicable to vte CVS HEAD successfully. And I confirmed gnome-terminal turns to work on im-canna and im-xim happily with this patch. I cannot confirm this bug with ATOK until I have it. It's a commercial software.
Please review and commit if it's ok.
OK, I've confirmed how this bug happen on gnome-terminal with ATOKX. 100% reproducable. 1. Press [Ctrl]-[Space] to enable ATOK Japanese input 2. Press 'a' and Japanese 'a' shows up as preedit string with underline 3. Press up-right X button of window manager to kill gnome-terminal 4. Crash #4 patch fixes the bug. I confirmed it doesn't crash.
Created attachment 32756 [details] [review] Updated patch - Add ChangeLog entry
I cannot reproduce #144317 bug as it is saying it's rare. But should be fixed with the patch, hopefully. That patch is against CVS HEAD. Nalin, Can I commit?
If you are sure about this I think it's ok to commit.
Behdad, should we commit this?
Would you please provide information on why you marked this bug as resolved?
Yes Kjartan, please go ahead.
2006-07-19 Behdad Esfahbod <behdad@gnome.org> Bug 134800 – gnome-termnal hung up when input by ATOK Patch from Yukihiro Nakai <nakai@gnome.gr.jp> * src/vte.c (vte_terminal_unrealize): Delay _vte_draw_free().