Only copy the console buffer contents to a rasops virtual console if
it's the first one (visible).

Otherwise all of the other virtual consoles initialize with the
trailing end of the kernel messages and then getty writes over them,
like this: https://imgur.com/a/mAXKf


Index: dev/rasops/rasops.c
===================================================================
RCS file: /cvs/src/sys/dev/rasops/rasops.c,v
retrieving revision 1.44
diff -u -p -u -p -r1.44 rasops.c
--- dev/rasops/rasops.c 15 Dec 2016 19:18:41 -0000      1.44
+++ dev/rasops/rasops.c 15 May 2017 01:40:22 -0000
@@ -1398,7 +1398,7 @@ rasops_alloc_screen(void *v, void **cook
        scr->rs_crow = -1;
        scr->rs_ccol = -1;
 
-       if (ri->ri_bs) {
+       if (ri->ri_bs && scr->rs_visible) {
                memcpy(scr->rs_bs, ri->ri_bs, ri->ri_rows * ri->ri_cols *
                    sizeof(struct wsdisplay_charcell));
        } else {

Reply via email to