ui: gtk: fix crash when terminal inner-border is NULL

VTE terminal inner-border can be NULL. The vte-0.36 (API 2.90)
code checks for the condition too so I assume it's not just a bug

Fixes a crash on Fedora 24 with gtk 3.20

Signed-off-by: Cole Robinson <crobinso@redhat.com>
Message-id: 2b2e85d403e8760ea53afd735a170500d5c17716.1462557436.git.crobinso@redhat.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
(cherry picked from commit 4fd811a6bd)
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
This commit is contained in:
Cole Robinson 2016-05-06 14:03:05 -04:00 committed by Michael Roth
parent 94c8340d93
commit 0f9745afaa

View File

@ -340,10 +340,12 @@ static void gd_update_geometry_hints(VirtualConsole *vc)
geo.min_height = geo.height_inc * VC_TERM_Y_MIN; geo.min_height = geo.height_inc * VC_TERM_Y_MIN;
mask |= GDK_HINT_MIN_SIZE; mask |= GDK_HINT_MIN_SIZE;
gtk_widget_style_get(vc->vte.terminal, "inner-border", &ib, NULL); gtk_widget_style_get(vc->vte.terminal, "inner-border", &ib, NULL);
geo.base_width += ib->left + ib->right; if (ib) {
geo.base_height += ib->top + ib->bottom; geo.base_width += ib->left + ib->right;
geo.min_width += ib->left + ib->right; geo.base_height += ib->top + ib->bottom;
geo.min_height += ib->top + ib->bottom; geo.min_width += ib->left + ib->right;
geo.min_height += ib->top + ib->bottom;
}
geo_widget = vc->vte.terminal; geo_widget = vc->vte.terminal;
#endif #endif
} }