GNOME Bugzilla – Bug 702371
/TreeView/sizing/row-separator-height fails when ran under valgrind
Last modified: 2018-04-14 23:59:48 UTC
/TreeView/sizing/row-separator-height is failing consistently in gtk+ 3.8 on Debian/mips. After finding that another test was failing only on ia64 (bug 702370) because of an invalid read (that happens on every arch) I ran this test under valgrind on x86_64. To my surprise, when ran under valgrind the test always fails, but there are no memory errors (actually there are 2 but are supressed because of dl-hack3-cond-1, so I assume those are fine). I added a few g_prints and there is an important difference when ran under valgrind and when not: emilio@titan:/tmp/gtk+3/gtk+3.0-3.8.2/debian/build/shared/gtk/tests$ .libs/treeview -p /TreeView/sizing/row-separator-height /TreeView/sizing/row-separator-height: two rows inserted rows inserted tree view created row separator func set column inserted. ncols: 1 is separator: 0: 0 is separator: 0: 1 is separator: 1: 2 is separator: 0: 3 is separator: 0: 4 is separator: 0: 0 is separator: 0: 0 is separator: 0: 0 window shown is separator: 1: 2 focus-padding: 1 wide separators: 0 separator-height: 0 expected height: 4 OK emilio@titan:/tmp/gtk+3/gtk+3.0-3.8.2/debian/build/shared/gtk/tests$ valgrind .libs/treeview -p /TreeView/sizing/row-separator-height ==14289== Memcheck, a memory error detector ==14289== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==14289== Using Valgrind-3.8.1 and LibVEX; rerun with -h for copyright info ==14289== Command: .libs/treeview -p /TreeView/sizing/row-separator-height ==14289== /TreeView/sizing/row-separator-height: two rows inserted rows inserted tree view created row separator func set column inserted. ncols: 1 is separator: 0: 0 is separator: 0: 0 is separator: 0: 0 is separator: 0: 0 window shown is separator: 1: 2 focus-padding: 1 wide separators: 0 separator-height: 0 expected height: 4 ** ERROR:/tmp/gtk+3/gtk+3.0-3.8.2/./gtk/tests/treeview.c:240:test_row_separator_height: assertion failed (rect.height == height): (24 == 4) Note that after gtk_widget_show_all is called, test_row_separator_height() is called a different number of times. This happens consistently, and the mips failure is similar to the one on amd64 under valgrind, so there's probably something hidden somewhere.
FWIW the Debian bug report is http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=711107 and the mips build log is https://buildd.debian.org/status/fetch.php?pkg=gtk%2B3.0&arch=mips&ver=3.8.2-1&stamp=1370711676
We're moving to gitlab! As part of this move, we are moving bugs to NEEDINFO if they haven't seen activity in more than a year. If this issue is still important to you and still relevant with GTK+ 3.22 or master, please reopen it and we will migrate it to gitlab.
As announced a while ago, we are migrating to gitlab, and bugs that haven't seen activity in the last year or so will be not be migrated, but closed out in bugzilla. If this bug is still relevant to you, you can open a new issue describing the symptoms and how to reproduce it with gtk 3.22.x or master in gitlab: https://gitlab.gnome.org/GNOME/gtk/issues/new