[17.04][gnome] screen hanged after meld launched via terminal was put to sleep by C-z: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

Bug #1712520 reported by Dmitrii Shcherbakov
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
GTK+
New
Undecided
Unassigned
gnome-terminal (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Surprisingly, when I launched meld as a difftool and later suspended it my session got frozen: my mouse was moving but clicks and keyboard presses did not have any effect, there was an empty rectangle on my screen on top of one of the windows. The only thing I could do was to switch to a different VT and take a look at what's going on.

Actions:

git difftool master tests/basic_deployment.py

This message is displayed because 'diff.tool' is not configured.
See 'git difftool --tool-help' or 'git help config' for more details.
'git difftool' will now attempt to use one of the following tools:
meld opendiff kdiff3 tkdiff xxdiff kompare gvimdiff diffuse diffmerge ecmerge p4merge araxis bc codecompare emerge vimdiff

Viewing (1/1): 'tests/basic_deployment.py'
Launch 'meld' [Y/n]? y
^Z
[1] + 16839 suspended git difftool master tests/basic_deployment.py

lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 17.04
Release: 17.04
Codename: zesty

dpkg -l 'gnome-session'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii gnome-session 3.24.0-0ubuntu1 amd64 GNOME Session Manager - GNOME 3 session

➜ ~ dpkg -l 'libgtk*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii libgtk-3-0:amd64 3.22.11-0ubuntu3 amd64 GTK+ graphical user interface library
ii libgtk-3-bin 3.22.11-0ubuntu3 amd64 programs for the GTK+ graphical user interface library
ii libgtk-3-common 3.22.11-0ubuntu3 all common files for the GTK+ graphical user interface library
un libgtk-vnc-1.0-0 <none> <none> (no description available)
ii libgtk-vnc-2.0-0:amd64 0.6.0-3 amd64 VNC viewer widget for GTK+3 (runtime libraries)
ii libgtk2-perl 2:1.2499-1 amd64 Perl interface to the 2.x series of the Gimp Toolkit library
un libgtk2-perl-doc <none> <none> (no description available)
ii libgtk2.0-0:amd64 2.24.31-1ubuntu1.1 amd64 GTK+ graphical user interface library
ii libgtk2.0-bin 2.24.31-1ubuntu1.1 amd64 programs for the GTK+ graphical user interface library
ii libgtk2.0-common 2.24.31-1ubuntu1.1 all common files for the GTK+ graphical user interface library
ii libgtkglext1:amd64 1.2.0-6 amd64 OpenGL Extension to GTK+ (shared libraries)
un libgtkmm-2.4-1c2a <none> <none> (no description available)
ii libgtkmm-2.4-1v5:amd64 1:2.24.5-1 amd64 C++ wrappers for GTK+ (shared libraries)
un libgtkmm-3.0-1 <none> <none> (no description available)
ii libgtkmm-3.0-1v5:amd64 3.22.0-1 amd64 C++ wrappers for GTK+ (shared libraries)
ii libgtksourceview-3.0-1:amd64 3.24.0-0ubuntu1 amd64 shared libraries for the GTK+ syntax highlighting widget
ii libgtksourceview-3.0-common 3.24.0-0ubuntu1 all common files for the GTK+ syntax highlighting widget
un libgtkspell-3-0 <none> <none> (no description available)
ii libgtkspell0 2.0.16-1.1ubuntu1 amd64 a spell-checking addon for GTK's TextView widget
ii libgtkspell3-3-0:amd64 3.0.9-1 amd64 spell-checking addon for GTK+'s TextView widget
➜ ~ dpkg -l 'gnome-terminal*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii gnome-terminal 3.24.2-0ubuntu3~ubuntu17.04.1 amd64 GNOME terminal emulator application
ii gnome-terminal-data 3.24.2-0ubuntu3~ubuntu17.04.1 all Data files for the GNOME terminal emulator
➜ ~ dpkg -l 'meld*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=====================================================-===============================-===============================-================================================================================================================
ii meld 3.16.4-1 all graphical tool to diff and merge files

The error log was full of gtk_widget_get_scale_factor assertions. Thankfully, I had a pid to kill - after `sudo kill 18653` I was able to get back to my session and continue on working (albeit I lost all my terminal tabs).

Similar assertion report:
https://mail.gnome.org/archives/evolution-list/2017-January/msg00047.html

journalctl

авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
авг 11 17:14:16 blade nautilus[18653]: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in gnome-terminal (Ubuntu):
status: New → Confirmed
Revision history for this message
aPlatypus (william-full-moon) wrote :

I am getting this message very very frequently.

   Ubuntu 19.10

from the command line. The most intersting thing is that I may have 5 or 6 bash windows open. Aftetr executiong Meld from one terminal window. If I subsequently use meld from a Different teminal session, these errors spray-out on that first terminal's window:

     :
   2020-03-18 11:52:47,201 CRITICAL Gtk: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
   2020-03-18 11:52:47,201 CRITICAL Gtk: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
   2020-03-18 11:52:47,201 CRITICAL Gtk: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed
   2020-03-18 11:52:47,201 CRITICAL Gtk: gtk_widget_get_scale_factor: assertion 'GTK_IS_WIDGET (widget)' failed

I execute meld with the following command

   nohup meld "${@}" > /dev/null 2>&1 &

Which sends output to dev/null. I am very surprised to see these messages coming on any screen since the output is sent to null.

It looks to me like there's some kind of service involved not the actuall meld background process

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.