NetBSD Problem Report #45816

From gson@gson.org  Wed Jan 11 15:48:54 2012
Return-Path: <gson@gson.org>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
	by www.NetBSD.org (Postfix) with ESMTP id AB83563B8CB
	for <gnats-bugs@gnats.NetBSD.org>; Wed, 11 Jan 2012 15:48:53 +0000 (UTC)
Message-Id: <20120111154857.A5F2775E3F@guava.gson.org>
Date: Wed, 11 Jan 2012 17:48:57 +0200 (EET)
From: gson@gson.org (Andreas Gustafsson)
Reply-To: gson@gson.org (Andreas Gustafsson)
To: gnats-bugs@gnats.NetBSD.org
Subject: Screen corruption in German sysinst install
X-Send-Pr-Version: 3.95

>Number:         45816
>Category:       install
>Synopsis:       Screen corruption in German sysinst install
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    install-manager
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jan 11 15:50:00 +0000 2012
>Closed-Date:    Mon Sep 03 18:33:44 +0000 2012
>Last-Modified:  Mon Sep 03 18:33:44 +0000 2012
>Originator:     Andreas Gustafsson
>Release:        NetBSD-current, source date 2012.01.09.11.52.43
>Organization:
>Environment:
Architecture: i386
Machine: i386
>Description:

See the "How-To-Repeat" section below.  I noticed this behavior while
testing my recent sysinst changes adding support for installing the
source sets, but testing a version without my changes gave the same
result.  "It was like this when I got here, I swear!"

>How-To-Repeat:

Start installing -current/i386 on a PC using sysinst from
the PC console (not a serial console).

Select German as the installation language.

Proceed with the installation to the point where you select the
location of the install sets ("Medium auswahlen").  Select
"a: CD-ROM / DVD".

You will now see a screen where you can select the CD drive and
path(s).  The cursor is positioned on the menu item for selecting the
drive: "Gerat cd0a" (with umlaut where appropriate).

Press enter to change the drive.  You will see a pop-up window
saying "Laufwerk [cd0a]:".

Press enter again to accept the default.

Note how there is now a stray close parenthesis in the rightmost
column of the screen.

Press enter two more times.

Note how a second copy of the text from the top of the screen ("Geben
Sie das CD-Laufwerk...") has now appeared below the menu.

Press enter a few more times and see how yet more copies of the text
keep appearing on the screen.

>Fix:

>Release-Note:

>Audit-Trail:
From: Andreas Gustafsson <gson@gson.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: install/45816: Screen corruption in German sysinst install
Date: Sun, 15 Jan 2012 18:57:04 +0200

 I just did an English-language installation using the same media, and
 saw similar screen corruption as in the German-language install.  The
 initial stray close parenthesis doesn't appear, but if you keep
 pressing enter where prompted for the CD drive as described in the
 original PR, additional copies of the text from the top of the screen
 appear just as they did in the German-language install.
 -- 
 Andreas Gustafsson, gson@gson.org

From: Julian Djamil Fagir <gnrp@komkon2.de>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: install/45816: Screen corruption in German sysinst install
Date: Wed, 29 Feb 2012 03:16:54 +0100

 --MP_/WrE3mjdYX3I7kSq2r_yxtka
 Content-Type: text/plain; charset=US-ASCII
 Content-Transfer-Encoding: 7bit
 Content-Disposition: inline

 Hi,

 >  I just did an English-language installation using the same media, and
 >  saw similar screen corruption as in the German-language install.  The
 >  initial stray close parenthesis doesn't appear, but if you keep
 >  pressing enter where prompted for the CD drive as described in the
 >  original PR, additional copies of the text from the top of the screen
 >  appear just as they did in the German-language install.
 the problem is a msg_display_add instead of msg_display, and a reoccurring
 call to that menu.
 With the attached patches, the user will see a single window with the error
 message instead of the error text appearing above the text about entering the
 CD path etc. Imho, this is better anyway (the user will really see the error
 instead of just somewhere inside the text appearing).

 I hope the diff format is right. If not, it's only about four lines all in
 all, you can apply it by hand as well.
 And I just hope my mailer now gets the encoding right.

 Regards, Julian
 --MP_/WrE3mjdYX3I7kSq2r_yxtka
 Content-Type: text/x-patch
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename=menus.mi.diff

 --- menus.mi
 +++ menus.mi
 @@ -321,11 +321,11 @@
  			clean_xfer_dir ? MSG_Yes : MSG_No);},
  		action {process_menu(MENU_yesno, deconst(MSG_delete_xfer_file));
  			clean_xfer_dir = yesno; };

  menu cdromsource, y=-4, x=0, w=70, no box, no clear, exitstring MSG_Continue;
 -	display action { msg_display_add(MSG_cdromsource); };
 +	display action { msg_display(MSG_cdromsource); };
  	option {src_legend(menu, MSG_Device, cdrom_dev);},
  		action { src_prompt(MSG_dev, cdrom_dev, sizeof cdrom_dev); };
  	option {src_legend(menu, MSG_Set_dir_bin, set_dir_bin);},
  		action { src_prompt(MSG_Set_dir_bin, set_dir_bin, sizeof set_dir_bin); };
  	option {src_legend(menu, MSG_Set_dir_src, set_dir_src);},

 --MP_/WrE3mjdYX3I7kSq2r_yxtka
 Content-Type: text/x-patch
 Content-Transfer-Encoding: 7bit
 Content-Disposition: attachment; filename=util.c.diff

 --- util.c
 +++ util.c
 @@ -571,11 +571,11 @@
  	if (silent)
  		msg_display("");
  	else {
  		umount_mnt2();
  		msg_display(MSG_cd_path_not_found);
 -		msg_display_add("\r\n\r\n");
 +		process_menu(MENU_ok, NULL);
  	}

  	/* ask for paths on the CD */
  	process_menu(MENU_cdromsource, NULL);


 --MP_/WrE3mjdYX3I7kSq2r_yxtka--

From: "Julian Fagir" <jdf@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/45816 CVS commit: src/distrib/utils/sysinst
Date: Sat, 7 Apr 2012 19:02:58 +0000

 Module Name:	src
 Committed By:	jdf
 Date:		Sat Apr  7 19:02:57 UTC 2012

 Modified Files:
 	src/distrib/utils/sysinst: menus.mi util.c

 Log Message:
 Fix for PR 45816: Restructuring the error menu when the CD ROM is missing.


 To generate a diff of this commit:
 cvs rdiff -u -r1.45 -r1.46 src/distrib/utils/sysinst/menus.mi
 cvs rdiff -u -r1.175 -r1.176 src/distrib/utils/sysinst/util.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->feedback
State-Changed-By: jdf@NetBSD.org
State-Changed-When: Sat, 07 Apr 2012 23:04:19 +0000
State-Changed-Why:
Proposed patch applied, waiting for feedback from submitter.
.


State-Changed-From-To: feedback->closed
State-Changed-By: jdf@NetBSD.org
State-Changed-When: Mon, 03 Sep 2012 18:33:44 +0000
State-Changed-Why:
Problem reproducable and fixed, no feedback


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.