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 791549 - gtklistbox: Crash on page-up on GtkListBox
gtklistbox: Crash on page-up on GtkListBox
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: .General
3.22.x
Other Linux
: Normal normal
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks:
 
 
Reported: 2017-12-13 05:40 UTC by benpack101
Modified: 2017-12-16 01:00 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description benpack101 2017-12-13 05:40:33 UTC
Overview:
When using Page-up to scroll to the top of a list such as the keyboard shortcuts list in gnome-control-center or to the top of an applications list in the elementary.appcenter(Pop!_Shop), the app crashes.

Steps to Reproduce:
"1. go to Settings->Device[s]->Keyboard
2. click on any entry then press Escape -- this is to get focus for navigating the list with up/down arrows and page up/down
3. press Page Up until reach the top; when it reaches the top entry the Settings window crashes every time"

Actual Result:
Application crashed

Hardware/Platforms:

This issue was found in Pop!_OS 17.10 and confirmed in the upstream Ubuntu 17.10 as well. Initially reported here: https://github.com/pop-os/pop/issues/89

GTK version: 3.22.25

Additional Information:

Output of journald is similar for both the gnome-control-center and elementary.appcenter instances of the respective app crashing:

`Dec 12 20:15:04 [redacted] gnome-control-center.desktop[4218]: **
Dec 12 20:15:04 [redacted] gnome-control-center.desktop[4218]: Gtk:ERROR:/build/gtk+3.0-wTY3BU/gtk+3.0-3.22.25/./gtk/gtklistbox.c:3094:gtk_list_box_move_cursor: assertion failed: (count > 0)`


The assertion that is terminating the application is on line 2838 of gtklistbox.c.

"/* A NULL row should only happen when the list box didn't
  * have enough rows to fill its height and the user made
  * a page movement down, so the count must be positive */"
Seems like there is another corner case to be considered.

Side-note: This bug seems to be a similar error in logic similar to the page-down crashing issue: #770703.