Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 18 Oct 1997 15:11:44 +0200 (CEST)
From:      Arjan de Vet <Arjan.deVet@adv.IAEhv.nl>
To:        jkh@time.cdrom.com (Jordan K. Hubbard)
Cc:        stable@freebsd.org
Subject:   Re: 4 days till 2.2.5!
Message-ID:  <199710181311.PAA00284@adv.IAEhv.nl>
In-Reply-To: <17059.877170400@time.cdrom.com> from "Jordan K. Hubbard" at "Oct 18, 97 03:26:40 am"

next in thread | previous in thread | raw e-mail | index | archive | help
Jordan K. Hubbard:

>Um, can you tell me exactly what you mean by this?  I booted up the
>latest 2.2.5-BETA floppy (971018) and was able to enter and leave the
>partition editor as many times as I wanted from the custom install
>menu.  Is there some specific way you're causing this failure to
>occur?

I've been doing some debugging and the problem only happens when I
select sd1 instead of sd0. The patch below seems to fix the bug.

The "problem" that remains is that once you have selected one or more disks
in the partition editor you cannot delete/add other disks anymore. Once
disks are selected, you always end up in the FDISK editor immediately for
all selected disks; in previous versions you always got the "Select Disks"
menu first.

Arjan

--- disks.c.orig	Sat Oct 18 14:36:06 1997
+++ disks.c	Sat Oct 18 14:40:46 1997
@@ -536,34 +536,34 @@
 int
 diskPartitionEditor(dialogMenuItem *self)
 {
     DMenu *menu;
     Device **devs;
-    int i, cnt;
+    int i, cnt, devcnt;
 
     cnt = diskGetSelectCount(&devs);
+    devcnt = deviceCount(devs);
     if (cnt == -1) {
 	msgConfirm("No disks found!  Please verify that your disk controller is being\n"
 		   "properly probed at boot time.  See the Hardware Guide on the\n"
 		   "Documentation menu for clues on diagnosing this type of problem.");
 	return DITEM_FAILURE;
     }
     else if (cnt) {
 	/* Some are already selected */
-	for (i = 0; i < cnt; i++) {
+	for (i = 0; i < devcnt; i++) {
 	    if (devs[i]->enabled) {
 		if (variable_get(VAR_NONINTERACTIVE))
 		    diskPartitionNonInteractive(devs[i]);
 		else
 		    diskPartition(devs[i]);
 	    }
 	}
     }
     else {
 	/* No disks are selected, fall-back case now */
-	cnt = deviceCount(devs);
-	if (cnt == 1) {
+	if (devcnt == 1) {
 	    devs[0]->enabled = TRUE;
 	    if (variable_get(VAR_NONINTERACTIVE))
 		diskPartitionNonInteractive(devs[0]);
 	    else
 		diskPartition(devs[0]);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199710181311.PAA00284>