GNOME Bugzilla – Bug 499905
im_context critical when unfreezing panes
Last modified: 2007-11-27 16:18:59 UTC
Version: r16207 OS: Ubuntu Gutsy Steps to reproduce: - Run Gnumeric from a terminal - View > Freeze Panes - View > Unfreeze Panes, and notice the following output: (gnumeric:9354): Gtk-CRITICAL **: gtk_im_context_set_client_window: assertion `GTK_IS_IM_CONTEXT (context)' failed (gnumeric:9354): Gtk-CRITICAL **: gtk_im_context_set_client_window: assertion `GTK_IS_IM_CONTEXT (context)' failed (gnumeric:9354): Gtk-CRITICAL **: gtk_im_context_set_client_window: assertion `GTK_IS_IM_CONTEXT (context)' failed Backtrace: Breakpoint 1, 0xb7225a86 in g_logv () from /usr/lib/libglib-2.0.so.0 (gdb) bt
+ Trace 179789
I see this. No valgrind events.
Should we be doing something like this? https://stage.maemo.org/svn/maemo/projects/haf/tags/gtkhtml/3.9.1-3osso5/upstream/patches/gtkhtml_030_unrealize_fix.diff # During unrealize, we must feed NULL to gtk_im_context_set_client_window so as to # dissociate it from a GdkWindow which is about to be destroyed anyway diff -ru gtkhtml-3.13.91/src/gtkhtml.c gtkhtml-3.13.91.mod6/src/gtkhtml.c --- gtkhtml-3.13.91/src/gtkhtml.c 2007-02-15 14:40:31.000000000 +0200 +++ gtkhtml-3.13.91.mod6/src/gtkhtml.c 2007-02-15 15:12:46.000000000 +0200 @@ -1119,7 +1119,7 @@ html_engine_unrealize (html->engine); - gtk_im_context_set_client_window (html->priv->im_context, widget->window); + gtk_im_context_set_client_window (html->priv->im_context, NULL); html_image_factory_stop_animations (html->engine->image_factory);
Created attachment 99725 [details] [review] Patch
Needs review. We need to do that, but more importantly we need to null check the context.
Go ahead. im_context got NULLed in gnm_pane_dispose
This problem has been fixed in the development version. The fix will be available in the next major software release. Thank you for your bug report.