#649579 gnome-terminal: sends unnecessary SIGWINCHes

Package:
gnome-terminal
Source:
gnome-terminal
Description:
GNOME terminal emulator application
Submitter:
Geoffrey Thomas
Date:
2015-09-15 17:54:03 UTC
Severity:
normal
#649579#5
Date:
2011-11-22 09:08:42 UTC
From:
To:
Package: gnome-terminal
Version: 3.0.1-1

Hi,

I have two maximized tabs in gnome-terminal, one of which has a smaller or
larger font size ("zoomed" with Ctrl-plus or Ctrl-minus). I have a pretty
uncustomized Wheezy (GNOME 3) desktop, on a 1366x768 screen. If I switch
from the zoomed tab to the normal-size tab with Ctrl-PgUp/PgDwn,
gnome-terminal seems to send a SIGWINCH to that tab, followed by another
one, apparently resizing the window to the size of the zoomed tab, and
then realizing that it's maximized and reverting to the old tab size.

It would be much smoother if the SIGWINCHes were simply not sent; since
gnome-terminal is maximized, the number of rows and columns is not going
to change based on the terminal resizing.

I'm happy to report this upstream if you'd like -- I didn't see anything
along these lines in a cursory search of GNOME Bugzilla.

Thanks for looking into this,

#649579#10
Date:
2013-02-28 18:37:20 UTC
From:
To:
Thanks for the bug report!
#649579#15
Date:
2014-02-13 18:14:44 UTC
From:
To:
Hey,

could you please try to reproduce this bug with newer version like
gnome-terminal-3.4.1.1-2 or 3.10.1-1 ?

thanks
regards
althaser

#649579#20
Date:
2014-06-03 01:51:18 UTC
From:
To:
#649579#25
Date:
2015-09-15 17:50:44 UTC
From:
To:
I can still reproduce this with gnome-terminal 3.16.2-1, with the added
complication that sometimes the spurious size changes don't actually
result in the right updates in the programs running in the terminal.
Exact steps to reproduce:

1) Open gnome-terminal.
2) Maximize the gnome-terminal window.
3) Open a program that cares about screen size, such as vim.  To make it
   more obvious what vim thinks the screen size is, you may want "set
   laststatus=2" to create a status line above the command area;
   however, you can also just type ':' to leave a prompt on the last
   line.
4) Open a second tab (Ctrl-Shift-T with the default keybindings).
5) In the second tab, increase the font size by a few steps with Ctrl-+.
6) Switch back to the first tab.

Notice that the terminal-oriented application in the first tab thinks
the screen has gotten smaller, to the width and height of the second
tab.

This reproduces 100% of the time for me, but in theory it *might* be a
race condition with the sending of multiple SIGWINCHes.  Nonetheless,
the right fix is still to stop resizing the terminal at all.

See https://bugzilla.gnome.org/show_bug.cgi?id=731137 upstream.

- Josh Triplett