2008-02-16 Robert Millan <rmh@aybabtu.com>

* util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
        do not assume partition map is PC/MSDOS before performing checks that
        are specific to that layout.
This commit is contained in:
robertmh 2008-02-16 22:31:35 +00:00
parent 0de8be863b
commit aca6350297
2 changed files with 20 additions and 6 deletions

View file

@ -1,3 +1,9 @@
2008-02-16 Robert Millan <rmh@aybabtu.com>
* util/i386/pc/grub-setup.c (setup): In find_first_partition_start(),
do not assume partition map is PC/MSDOS before performing checks that
are specific to that layout.
2008-02-13 Robert Millan <rmh@aybabtu.com> 2008-02-13 Robert Millan <rmh@aybabtu.com>
* conf/i386-linuxbios.rmk (grub_emu_SOURCES): Remove * conf/i386-linuxbios.rmk (grub_emu_SOURCES): Remove

View file

@ -119,6 +119,8 @@ setup (const char *prefix, const char *dir,
int find_first_partition_start (grub_disk_t disk __attribute__ ((unused)), int find_first_partition_start (grub_disk_t disk __attribute__ ((unused)),
const grub_partition_t p) const grub_partition_t p)
{
if (! strcmp (p->partmap->name, "pc_partition_map"))
{ {
struct grub_pc_partition *pcdata = p->data; struct grub_pc_partition *pcdata = p->data;
@ -126,6 +128,12 @@ setup (const char *prefix, const char *dir,
&& ! grub_pc_partition_is_bsd (pcdata->dos_type) && ! grub_pc_partition_is_bsd (pcdata->dos_type)
&& first_start > p->start) && first_start > p->start)
first_start = p->start; first_start = p->start;
}
else
{
if (first_start > p->start)
first_start = p->start;
}
return 0; return 0;
} }