From owner-freebsd-hackers Wed Jan 28 13:10:08 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id NAA23061 for hackers-outgoing; Wed, 28 Jan 1998 13:10:08 -0800 (PST) (envelope-from owner-freebsd-hackers@FreeBSD.ORG) Received: from ifi.uio.no (0@ifi.uio.no [129.240.64.2]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id NAA22601; Wed, 28 Jan 1998 13:08:38 -0800 (PST) (envelope-from dag-erli@ifi.uio.no) Received: from hrotti.ifi.uio.no (2602@hrotti.ifi.uio.no [129.240.64.15]) by ifi.uio.no (8.8.8/8.8.7/ifi0.2) with ESMTP id WAA17922; Wed, 28 Jan 1998 22:08:33 +0100 (MET) Received: (from dag-erli@localhost) by hrotti.ifi.uio.no ; Wed, 28 Jan 1998 22:08:32 +0100 (MET) To: Kazutaka YOKOTA Cc: hackers@FreeBSD.ORG, msmith@FreeBSD.ORG Subject: Re: Graphical screen saver References: <199801280640.PAA25860@zodiac.mech.utsunomiya-u.ac.jp> Organization: Gutteklubben Terrasse X-url: http://www.ifi.uio.no/~dag-erli/ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 8bit From: dag-erli@ifi.uio.no (Dag-Erling Coidan Smørgrav) Date: 28 Jan 1998 22:08:32 +0100 In-Reply-To: Kazutaka YOKOTA's message of "Wed, 28 Jan 1998 15:40:35 +0900" Message-ID: Lines: 58 X-Mailer: Gnus v5.5/Emacs 19.34 Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk Kazutaka YOKOTA writes: > We have to be careful about VT switching while the graphical saver > is active. I will check several things in syscons and contact you > later. (I suspect we need to patch syscons...) I patched my syscons to always stop the screensaver before switching. I can't see *any* reason why we should want to keep the screensaver running during a switch. I can see several reasons why we should *not* want that. The following diff is relative to the -stable version of syscons.c (unless it has changed very recently): *** syscons.c.orig Tue Jan 27 16:49:04 1998 --- syscons.c Wed Jan 28 22:07:13 1998 *************** *** 2187,2192 **** --- 2187,2197 ---- scintr(0); } + /* should we stop the screen saver? */ + if (mono_time.tv_sec <= scrn_time_stamp + scrn_blank_time) + if (scrn_blanked > 0) + stop_scrn_saver(current_saver); + /* should we just return ? */ if ((scp->status&UNKNOWN_MODE) || blink_in_progress || switch_in_progress) { timeout(scrn_timer, NULL, hz / 10); *************** *** 2194,2204 **** return; } - /* should we stop the screen saver? */ - if (mono_time.tv_sec <= scrn_time_stamp + scrn_blank_time) - if (scrn_blanked > 0) - stop_scrn_saver(current_saver); - if (scrn_blanked <= 0) { /* update screen image */ if (scp->start <= scp->end) { --- 2199,2204 ---- *************** *** 2320,2325 **** --- 2320,2328 ---- static int switch_scr(scr_stat *scp, u_int next_scr) { + if (scrn_blanked > 0) + stop_scrn_saver(current_saver); + if (switch_in_progress && (cur_console->proc != pfind(cur_console->pid))) switch_in_progress = FALSE; -- * Finrod (INTJ) * Unix weenie * dag-erli@ifi.uio.no * cellular +47-92835919 * RFC1123: "Be liberal in what you accept, and conservative in what you send"