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 758841 - Vte-CRITICAL **: glong vte_terminal_get_char_height/height(): assertion 'gtk_widget_get_realized()' failed
Vte-CRITICAL **: glong vte_terminal_get_char_height/height(): assertion 'gtk_...
Status: RESOLVED FIXED
Product: vte
Classification: Core
Component: general
git master
Other Linux
: Normal normal
: ---
Assigned To: VTE Maintainers
VTE Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-11-30 12:52 UTC by Olivier Fourdan
Modified: 2015-11-30 16:24 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Proposed patch (1.28 KB, patch)
2015-11-30 13:01 UTC, Olivier Fourdan
none Details | Review

Description Olivier Fourdan 2015-11-30 12:52:40 UTC
Summary:

Commit 7dcde66 introduced a regression with client-side decorations.

(gnome-terminal-server:10109): Vte-CRITICAL **: glong vte_terminal_get_char_width(VteTerminal*): assertion 'gtk_widget_get_realized(&terminal->widget)' failed

(gnome-terminal-server:10109): Vte-CRITICAL **: glong vte_terminal_get_char_height(VteTerminal*): assertion 'gtk_widget_get_realized(&terminal->widget)' failed

And the terminal window ends up with a completely wrong size.

How reproducible:

Always

Steps to reproduce:

1. Install vte from git master
2. Run gnome-terminal with GTK_CSD:

$ GTK_CSD=1 /usr/libexec/gnome-terminal-server --app-id my.foo.Terminal & sleep 1; gnome-terminal --app-id my.foo.Terminal

Actual result:

Critical messages about terminal widget not beingrealized and a very large window.

Expected result:

Reasonably sized window and no critical message.
Comment 1 Olivier Fourdan 2015-11-30 13:01:01 UTC
Created attachment 316511 [details] [review]
Proposed patch
Comment 2 Christian Persch 2015-11-30 16:24:27 UTC
Adding ensure_font() isn't necessary since the accessor already do that. So I just removed the realized? check. It's not really ok to call these on an unrealized widget, but somehow it's happening in g-t (CSD or not didn't make a diff in my testing), so let's allow this for now.