aboutsummaryrefslogtreecommitdiff
path: root/sys/dev
diff options
context:
space:
mode:
authorKazutaka YOKOTA <yokota@FreeBSD.org>1999-08-27 09:20:41 +0000
committerKazutaka YOKOTA <yokota@FreeBSD.org>1999-08-27 09:20:41 +0000
commit21f652c5b17b5010d363a1ca4fbb4d18d84133f2 (patch)
treebd32ddf946541392807d24347aa02b7d0f70873d /sys/dev
parent484fc65c064fa893e05b99c28fd0f6c9f12697fc (diff)
downloadsrc-21f652c5b17b5010d363a1ca4fbb4d18d84133f2.tar.gz
src-21f652c5b17b5010d363a1ca4fbb4d18d84133f2.zip
- Retain the previous vty and history buffers when setting up
the graphics mode. This was the behavior prior to syscons.c rev 1.278, but broken in scvidctl.c rev 1.1.
Notes
Notes: svn path=/head/; revision=50447
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/syscons/scvidctl.c13
1 files changed, 5 insertions, 8 deletions
diff --git a/sys/dev/syscons/scvidctl.c b/sys/dev/syscons/scvidctl.c
index 39514250e4e5..1187657b58ea 100644
--- a/sys/dev/syscons/scvidctl.c
+++ b/sys/dev/syscons/scvidctl.c
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $Id: scvidctl.c,v 1.9 1999/06/22 14:13:29 yokota Exp $
+ * $Id: scvidctl.c,v 1.10 1999/07/07 13:48:49 yokota Exp $
*/
#include "sc.h"
@@ -243,7 +243,6 @@ sc_set_graphics_mode(scr_stat *scp, struct tty *tp, int mode)
#else
video_info_t info;
sc_rndr_sw_t *rndr;
- int prev_ysize;
int error;
int s;
@@ -264,12 +263,13 @@ sc_set_graphics_mode(scr_stat *scp, struct tty *tp, int mode)
}
/* set up scp */
- prev_ysize = scp->ysize;
scp->status |= (UNKNOWN_MODE | GRAPHICS_MODE);
scp->status &= ~PIXEL_MODE;
scp->mode = mode;
- scp->xsize = info.vi_width/8;
- scp->ysize = info.vi_height/info.vi_cheight;
+ /*
+ * Don't change xsize and ysize; preserve the previous vty
+ * and history buffers.
+ */
scp->xoff = 0;
scp->yoff = 0;
scp->xpixel = info.vi_width;
@@ -280,9 +280,6 @@ sc_set_graphics_mode(scr_stat *scp, struct tty *tp, int mode)
/* move the mouse cursor at the center of the screen */
sc_mouse_move(scp, scp->xpixel / 2, scp->ypixel / 2);
#endif
-#ifndef SC_NO_HISTORY
- sc_free_history_buffer(scp, prev_ysize);
-#endif
scp->rndr = rndr;
splx(s);