summaryrefslogtreecommitdiff
path: root/sys/arch/i386/stand/installboot/installboot.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/i386/stand/installboot/installboot.c')
-rw-r--r--sys/arch/i386/stand/installboot/installboot.c14
1 files changed, 8 insertions, 6 deletions
diff --git a/sys/arch/i386/stand/installboot/installboot.c b/sys/arch/i386/stand/installboot/installboot.c
index 3063302c72b..a1a068c5bd3 100644
--- a/sys/arch/i386/stand/installboot/installboot.c
+++ b/sys/arch/i386/stand/installboot/installboot.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: installboot.c,v 1.5 1997/08/22 20:03:17 mickey Exp $ */
+/* $OpenBSD: installboot.c,v 1.6 1997/08/23 14:31:49 mickey Exp $ */
/* $NetBSD: installboot.c,v 1.5 1995/11/17 23:23:50 gwr Exp $ */
/*
@@ -403,11 +403,13 @@ loadblocknums(boot, devfd)
printf("Will load %d blocks of size %d each.\n",
ndb, fs->fs_bsize);
- /* adjust disklabel w/ synthetic geometry */
- if (nsectors > 0)
- dl.d_nsectors = nsectors;
- if (heads > 0)
- dl.d_secpercyl = dl.d_nsectors * heads;
+ if (dl.d_type != 0 && dl.d_type < DTYPE_FLOPPY) {
+ /* adjust disklabel w/ synthetic geometry */
+ if (nsectors > 0)
+ dl.d_nsectors = nsectors;
+ if (heads > 0)
+ dl.d_secpercyl = dl.d_nsectors * heads;
+ }
/*
* Get the block numbers; we don't handle fragments