Sorry. I tested the patch again. It can not fix this problem.

On Sun, Oct 26, 2008 at 2:30 PM, Peng Huang <[EMAIL PROTECTED]> wrote:

> Hi,
>
> I meet a problem with in gtk immodule. I known I should use
> g_type_register_dynamic in the module. But my gtk module is linked with
> another library based on glib. It uses g_type_register_static to register
> its classes. When a gtk application loads my im module twice, it will cause
> crash, and give some error output.
>
> GLib-GObject-WARNING **: cannot register existing type `IBusObject'
>
> I found it could be fixed by changing the args of g_module_open (Please
> check below patch). I want to know if I could avoid this problem without
> modify gtk. Thanks.
>
> --- gtk+-2.14.4/gtk/gtkimmodule.c.old    2008-10-26 14:17:00.000000000
> +0800
> +++ gtk+-2.14.4/gtk/gtkimmodule.c    2008-10-26 14:17:13.000000000 +0800
> @@ -98,7 +98,7 @@
>
>    if (!im_module->builtin)
>      {
> -      im_module->library = g_module_open (im_module->path,
> G_MODULE_BIND_LAZY | G_MODULE_BIND_LOCAL);
> +      im_module->library = g_module_open (im_module->path,
> G_MODULE_BIND_LAZY/* | G_MODULE_BIND_LOCAL */);
>        if (!im_module->library)
>      {
>        g_warning ("%s", g_module_error());
>
> Thanks
> Peng Huang
>
_______________________________________________
gtk-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-list

Reply via email to