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 766336 - Crash when selecting rows with rubberbanding
Crash when selecting rows with rubberbanding
Product: gtk+
Classification: Platform
Component: Widget: GtkTreeView
Other Linux
: Normal normal
: ---
Assigned To: gtktreeview-bugs
Depends on:
Reported: 2016-05-12 16:47 UTC by Christian Boxdörfer
Modified: 2016-05-19 21:36 UTC
See Also:
GNOME target: ---
GNOME version: ---

Backtrace (1.64 KB, text/plain)
2016-05-12 16:47 UTC, Christian Boxdörfer
testcase (3.09 KB, text/plain)
2016-05-12 16:48 UTC, Christian Boxdörfer

Description Christian Boxdörfer 2016-05-12 16:47:18 UTC
Created attachment 327727 [details]

Steps to reproduce:
- use a GtkTreeView with rubberbanding and multiple selections enabled
- there has to be an empty area below the last row
- start rubberbanding from the area below the last row
- move the mouse up to select at least the last row
- move the mouse back to the empty area at the bottom

The application crashes with SIGABORT

This happens because of a missing NULL check for start_node after calling _gtk_rbtree_find_offset ().
Comment 1 Christian Boxdörfer 2016-05-12 16:48:21 UTC
Created attachment 327728 [details]
Comment 2 Christian Boxdörfer 2016-05-12 16:58:15 UTC
I guess there are multiple ways to fix this. E.g. the GTK+2 treeview doesn't allow rubberbanding when launched from an empty area below the rows at all. So is this even supposed to be possible in the GTK+3 version?