diff --git a/ChangeLog b/ChangeLog index 9fdcfee8e..e17207d1f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,12 +1,8 @@ -1999-06-24 OKUJI Yoshinori +1999-06-25 OKUJI Yoshinori - * Makefile.am (SUBDIRS): Change the order of the directories so - that a directory will be made after the dependent directories - are made. `grub' depends on `stage2', and `docs' depends on - `grub'. Do not make in parallel. - * docs/help2man: Copied from help2man-1.012, which contains my - previous change. - * docs/grub.8: Regenerated. + * stage2/disk_io.c (attempt_mount) [STAGE1_5]: Set FSYS_TYPE to + 0, and set it to NUM_FSYS if mount fails. + (real_open_partition): Call rawread in Stage 1.5 as well. 1999-06-24 OKUJI Yoshinori diff --git a/stage2/disk_io.c b/stage2/disk_io.c index cf0577987..d03b4a544 100644 --- a/stage2/disk_io.c +++ b/stage2/disk_io.c @@ -258,8 +258,12 @@ attempt_mount (void) if (fsys_type == NUM_FSYS && errnum == ERR_NONE) errnum = ERR_FSYS_MOUNT; #else - if ((*(fsys_table[0].mount_func)) () != 1) - errnum = ERR_FSYS_MOUNT; + fsys_type = 0; + if ((*(fsys_table[fsys_type].mount_func)) () != 1) + { + fsys_type = NUM_FSYS; + errnum = ERR_FSYS_MOUNT; + } #endif } @@ -395,15 +399,17 @@ real_open_partition (int flags) char mbr_buf[SECTOR_SIZE]; int i, part_no, slice_no, ext = 0; +#ifndef STAGE1_5 + if (! sane_partition ()) + return 0; +#endif + /* * The "rawread" is probably unnecessary here, but it is good to * know it works. */ -#ifndef STAGE1_5 - if (!sane_partition () - || !rawread (current_drive, 0, 0, SECTOR_SIZE, mbr_buf)) + if (! rawread (current_drive, 0, 0, SECTOR_SIZE, mbr_buf)) return 0; -#endif bsd_evil_hack = 0; current_slice = 0;