[Glade-devel] Custom Widgets in Glade 2.6



Dear Damon,

Thanks for you prompt reply. I will try out the things you have suggested.

Below is the trace back that we get on Valgrind when Custom widget
xgrid_color is loaded

==18524==
==18524== Use of uninitialised value of size 4
==18524==    at 0x5E9E629: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5EA1A64: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5EA2309: gdk_draw_rgb_image_dithalign (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E936D2: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5EB708E: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E92222: gdk_draw_pixbuf (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9BF22: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E92222: gdk_draw_pixbuf (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C510: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C884: gdk_pixmap_colormap_create_from_xpm_d (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x80973FF: xptui_color_block_pixmap_new(char const*)
(callbacks.C:252)
==18524==    by 0x80978EF: xptui_color_combo (callbacks.C:379)
==18524==
==18524== Conditional jump or move depends on uninitialised value(s)
==18524==    at 0x5E9B4EF: gdk_pixbuf_render_threshold_alpha (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9B933:
gdk_pixbuf_render_pixmap_and_mask_for_colormap (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C54D: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C884: gdk_pixmap_colormap_create_from_xpm_d (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x80973FF: xptui_color_block_pixmap_new(char const*)
(callbacks.C:252)
==18524==    by 0x80978EF: xptui_color_combo (callbacks.C:379)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Conditional jump or move depends on uninitialised value(s)
==18524==    at 0x5E9B52E: gdk_pixbuf_render_threshold_alpha (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9B933:
gdk_pixbuf_render_pixmap_and_mask_for_colormap (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C54D: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C884: gdk_pixmap_colormap_create_from_xpm_d (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x80973FF: xptui_color_block_pixmap_new(char const*)
(callbacks.C:252)
==18524==    by 0x80978EF: xptui_color_combo (callbacks.C:379)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Invalid write of size 4
==18524==    at 0x5DFB1CB: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:560)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)


==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==  Address 0x7E376B8 is 8 bytes before a block of size 768 alloc'd
==18524==    at 0x40056BF: calloc (vg_replace_malloc.c:279)
==18524==    by 0x55BBDF: g_malloc0 (in /usr/lib/libglib-2.0.so.0.400.7)
==18524==    by 0x5DFB19D: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:554)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Invalid write of size 4
==18524==    at 0x5DFB1D7: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:560)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==  Address 0x7E376BC is 4 bytes before a block of size 768 alloc'd
==18524==    at 0x40056BF: calloc (vg_replace_malloc.c:279)
==18524==    by 0x55BBDF: g_malloc0 (in /usr/lib/libglib-2.0.so.0.400.7)
==18524==    by 0x5DFB19D: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:554)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Invalid write of size 4
==18524==    at 0x5DFB1CB: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:560)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==  Address 0x7E376B4 is 12 bytes before a block of size 768 alloc'd
==18524==    at 0x40056BF: calloc (vg_replace_malloc.c:279)
==18524==    by 0x55BBDF: g_malloc0 (in /usr/lib/libglib-2.0.so.0.400.7)
==18524==    by 0x5DFB19D: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:554)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Invalid write of size 4
==18524==    at 0x5DFB1D1: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:560)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==  Address 0x7E376B8 is 8 bytes before a block of size 768 alloc'd
==18524==    at 0x40056BF: calloc (vg_replace_malloc.c:279)
==18524==    by 0x55BBDF: g_malloc0 (in /usr/lib/libglib-2.0.so.0.400.7)
==18524==    by 0x5DFB19D: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:554)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==
==18524== Invalid write of size 4
==18524==    at 0x5DFB1D7: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:560)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==  Address 0x7E376BC is 4 bytes before a block of size 768 alloc'd
==18524==    at 0x40056BF: calloc (vg_replace_malloc.c:279)
==18524==    by 0x55BBDF: g_malloc0 (in /usr/lib/libglib-2.0.so.0.400.7)
==18524==    by 0x5DFB19D: gtk_color_combo_construct_with_values
(gtkcolorcombo.c:554)
==18524==    by 0x5DFB229: gtk_color_combo_new_with_values (gtkcolorcombo.c:539)
==18524==    by 0x8097A1A: xptui_color_combo (callbacks.C:390)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)


Color_Combo   ygrid_color


==18524==
==18524== Conditional jump or move depends on uninitialised value(s)
==18524==    at 0x5E9B4F4: gdk_pixbuf_render_threshold_alpha (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9B933:
gdk_pixbuf_render_pixmap_and_mask_for_colormap (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C54D: (within /usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x5E9C884: gdk_pixmap_colormap_create_from_xpm_d (in
/usr/lib/libgdk-x11-2.0.so.0.400.13)
==18524==    by 0x80973FF: xptui_color_block_pixmap_new(char const*)
(callbacks.C:252)
==18524==    by 0x80978EF: xptui_color_combo (callbacks.C:379)
==18524==    by 0x5FCA578: (within /usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC542: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC828: glade_standard_build_children (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCBCBE: glade_xml_set_common_params (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FCC5A7: glade_xml_build_widget (in
/usr/lib/libglade-2.0.so.0.0.4)
==18524==    by 0x5FD3454: (within /usr/lib/libglade-2.0.so.0.0.4)

For rest of the Custom Color widgets the Valgrind does not show any messages.

Thanks in Advance

Avtar Singh



On 4/2/07, Damon Chaplin <damon at karuna.eclipse.co.uk> wrote:
On Mon, 2007-04-02 at 11:47 +0530, Avtar Singh wrote:
Dear Damon,

The problem occurs randomly while calling
gdk_pixmap_colormap_create_from_xpm_d() in my code when we are calling
custom widgets to create custom color combo box.

The backtrace from GDB is as follows:

*** glibc detected *** corrupted double-linked list: 0x0a1ef390 ***

It looks like some sort of memory corruption problem. I'm surprised
valgrind hasn't found it.

It may be a bug in the GTK+ code - you could try it with a more recent
GTK+.

The only other thing I can suggest is trying to create the smallest
possible program that reproduces the problem. Or check if it is related
to a particular xpm.

Damon







[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]