* grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease

efi_mmap_size.
	Reported by: Stuart Hayes.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2012-07-02 11:14:37 +02:00
parent e80fdf7d2e
commit 3569288126
2 changed files with 11 additions and 2 deletions

View file

@ -1,3 +1,9 @@
2012-07-02 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/loader/i386/linux.c (find_efi_mmap_size): Don't decrease
efi_mmap_size.
Reported by: Stuart Hayes.
2012-06-28 Vladimir Serbinenko <phcoder@gmail.com> 2012-06-28 Vladimir Serbinenko <phcoder@gmail.com>
Add monochrome text support (mda_text, aka `hercules' in grub-legacy). Add monochrome text support (mda_text, aka `hercules' in grub-legacy).

View file

@ -118,12 +118,13 @@ find_efi_mmap_size (void)
int ret; int ret;
grub_efi_memory_descriptor_t *mmap; grub_efi_memory_descriptor_t *mmap;
grub_efi_uintn_t desc_size; grub_efi_uintn_t desc_size;
grub_efi_uintn_t cur_mmap_size = mmap_size;
mmap = grub_malloc (mmap_size); mmap = grub_malloc (cur_mmap_size);
if (! mmap) if (! mmap)
return 0; return 0;
ret = grub_efi_get_memory_map (&mmap_size, mmap, 0, &desc_size, 0); ret = grub_efi_get_memory_map (&cur_mmap_size, mmap, 0, &desc_size, 0);
grub_free (mmap); grub_free (mmap);
if (ret < 0) if (ret < 0)
@ -134,6 +135,8 @@ find_efi_mmap_size (void)
else if (ret > 0) else if (ret > 0)
break; break;
if (mmap_size < cur_mmap_size)
mmap_size = cur_mmap_size;
mmap_size += (1 << 12); mmap_size += (1 << 12);
} }