After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 507751 - Conditional jump or move depends on uninitialised value(s)
Conditional jump or move depends on uninitialised value(s)
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: GtkTreeView
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtktreeview-bugs
gtktreeview-bugs
Depends on:
Blocks:
 
 
Reported: 2008-01-06 23:40 UTC by Christian Persch
Modified: 2008-01-10 10:14 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
patch (2.10 KB, patch)
2008-01-06 23:43 UTC, Christian Persch
committed Details | Review

Description Christian Persch 2008-01-06 23:40:50 UTC
From testtreecolumns, by adding a few columns and DND-reordering them.

The cause seems to be that the GdkWindowAttr is only partially initialised in 
_gtk_tree_view_column_start_drag and 
gtk_tree_view_motion_draw_column_motion_arrow.

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40B38F1: gdk_window_new (gdkwindow-x11.c:747)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40B391C: gdk_window_new (gdkwindow-x11.c:748)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A1093: gdk_window_compute_position (gdkgeometry-x11.c:753)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A10EA: gdk_window_compute_position (gdkgeometry-x11.c:762)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A12E8: gdk_window_compute_position (gdkgeometry-x11.c:805)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x4071EA5: gdk_rectangle_intersect (gdkrectangle.c:90)
==3281==    by 0x40A13E8: gdk_window_compute_position (gdkgeometry-x11.c:822)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x4071ECB: gdk_rectangle_intersect (gdkrectangle.c:91)
==3281==    by 0x40A13E8: gdk_window_compute_position (gdkgeometry-x11.c:822)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x4071F00: gdk_rectangle_intersect (gdkrectangle.c:92)
==3281==    by 0x40A13E8: gdk_window_compute_position (gdkgeometry-x11.c:822)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x4071F3A: gdk_rectangle_intersect (gdkrectangle.c:93)
==3281==    by 0x40A13E8: gdk_window_compute_position (gdkgeometry-x11.c:822)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x4071F4F: gdk_rectangle_intersect (gdkrectangle.c:95)
==3281==    by 0x40A13E8: gdk_window_compute_position (gdkgeometry-x11.c:822)
==3281==    by 0x409F700: _gdk_window_init_position (gdkgeometry-x11.c:218)
==3281==    by 0x40B3A3D: gdk_window_new (gdkwindow-x11.c:775)
==3281==    by 0x43F7F32: _gtk_tree_view_column_start_drag (gtktreeview.c:9329)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A0B2D: _gdk_window_move_resize_child (gdkgeometry-x11.c:654)
==3281==    by 0x40B6084: gdk_window_move_resize (gdkwindow-x11.c:1818)
==3281==    by 0x43F8108: _gtk_tree_view_column_start_drag (gtktreeview.c:9366)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A0B5D: _gdk_window_move_resize_child (gdkgeometry-x11.c:655)
==3281==    by 0x40B6084: gdk_window_move_resize (gdkwindow-x11.c:1818)
==3281==    by 0x43F8108: _gtk_tree_view_column_start_drag (gtktreeview.c:9366)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)


==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40A0C8A: _gdk_window_move_resize_child (gdkgeometry-x11.c:680)
==3281==    by 0x40B6084: gdk_window_move_resize (gdkwindow-x11.c:1818)
==3281==    by 0x43F8108: _gtk_tree_view_column_start_drag (gtktreeview.c:9366)
==3281==    by 0x44091BB: gtk_tree_view_column_button_event (gtktreeviewcolumn.c:1073)

etc etc etc.

And also ones from the drag arrow:

==3281== Conditional jump or move depends on uninitialised value(s)
==3281==    at 0x40B38F1: gdk_window_new (gdkwindow-x11.c:747)
==3281==    by 0x43E8770: gtk_tree_view_motion_draw_column_motion_arrow (gtktreeview.c:3342)
==3281==    by 0x43E9320: gtk_tree_view_update_current_reorder (gtktreeview.c:3579)
==3281==    by 0x43E97B5: gtk_tree_view_motion_drag_column (gtktreeview.c:3661)
==3281==    by 0x43EA911: gtk_tree_view_motion (gtktreeview.c:4075)


etc etc etc.
Comment 1 Christian Persch 2008-01-06 23:43:43 UTC
Created attachment 102294 [details] [review]
patch
Comment 2 Kristian Rietveld 2008-01-10 10:14:08 UTC
Found some more occurrences and also fixed those.  Committed on trunk r19333; will backmerge to stable later today.

2008-01-10  Kristian Rietveld  <kris@imendio.com>

        * gtk/gtktreeview.c (gtk_tree_view_motion_draw_column_motion_arrow),
        (_gtk_tree_view_column_start_drag): fully initialize GdkWindowAttr to
        avoid valgrind warnings.  (#507751, patch from Christian Persch).