summaryrefslogtreecommitdiffstats
path: root/sys/dev
diff options
context:
space:
mode:
authordumbbell <dumbbell@FreeBSD.org>2014-10-13 14:40:00 +0000
committerdumbbell <dumbbell@FreeBSD.org>2014-10-13 14:40:00 +0000
commitb366d417903edcb381e3528834b44441dd607fd4 (patch)
tree1ed7cf11dda85767a96609d20fa588e767b6115c /sys/dev
parent6981999a42afe5af0e2c5d70fe91d5bc7e15ff93 (diff)
downloadFreeBSD-src-b366d417903edcb381e3528834b44441dd607fd4.zip
FreeBSD-src-b366d417903edcb381e3528834b44441dd607fd4.tar.gz
vt(4): Don't recalculate buffer size if we don't know screen size
(MFC of r272537) When the screen size is unknown, it's set to 0x0. We can't use that as the buffer size, otherwise, functions such as vtbuf_fill() will fail. This fixes a panic on RaspberryPi, where there's no vt(4) backend configured early in boot. PR: 193981 Tested by: danilo@
Diffstat (limited to 'sys/dev')
-rw-r--r--sys/dev/vt/vt_core.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/vt/vt_core.c b/sys/dev/vt/vt_core.c
index 2dd7e3f..67d4348 100644
--- a/sys/dev/vt/vt_core.c
+++ b/sys/dev/vt/vt_core.c
@@ -1269,7 +1269,8 @@ vtterm_cnprobe(struct terminal *tm, struct consdev *cp)
* that we have the real viewable size, fix it in the static
* buffer.
*/
- vt_termsize(vd, vw->vw_font, &vw->vw_buf.vb_scr_size);
+ if (vd->vd_width != 0 && vd->vd_height != 0)
+ vt_termsize(vd, vw->vw_font, &vw->vw_buf.vb_scr_size);
vtbuf_init_early(&vw->vw_buf);
vt_winsize(vd, vw->vw_font, &wsz);
OpenPOWER on IntegriCloud