[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#484516: X does not restore video mode properly when switching to a virtual console or terminating



Package: xserver-xorg-core
Version: 2:1.1.1-21etch4

X does not restore the video mode properly when
switching to a virtual console or terminating.

To reproduce this problem, start the X server.  Switch
to a virtual console via Ctrl+Alt+Fn, where n = 1 to
6.  Now change the text video mode using the
SVGATextMode utility.  For example, change from 80x25
(the default) to 80x33x9.  Now resume the X server via
Alt+F7.  (I assume the default here, with the X server
running on virtual console number 7.)  Now switch to
any virtual console via Ctrl+Alt+Fn or terminate X. 
The video mode is corrupted.

When X transfers control to a virtual console via
Ctrl+Alt+Fn, it restores the video registers as they
existed at X startup, not as they existed when X was
last resumed (via Alt+F7) from a virtual console.  So
the video registers no longer correspond to the
logical screen size of the virtual console.  The
physical display is at 80x25 size (assuming that that
is the size that existed at startup), but the logical
screen size is still 33 lines long.  So the command
line is below the bottom of the physical screen.

When X transfers control to a virtual console (via
Ctrl+Alt+Fn), or when X terminates, it should restore
the video registers as they existed when X was last
resumed (via Alt+F7) from a virtual console.  If X has
never been resumed, only then should the registers as
they existed at startup be restored.



      



Reply to: