2010-02-03 Torsten Landschoff <torsten@debian.org>

* kern/disk.c (grub_disk_read): Fix offset computation when reading
	last sectors.
This commit is contained in:
Torsten Landschoff 2010-02-03 00:46:55 +01:00 committed by Vladimir 'phcoder' Serbinenko
parent 996649b073
commit 399f6e4d9c
2 changed files with 7 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2010-02-03 Torsten Landschoff <torsten@debian.org>
* kern/disk.c (grub_disk_read): Fix offset computation when reading
last sectors.
2010-02-03 Vladimir Serbinenko <phcoder@gmail.com> 2010-02-03 Vladimir Serbinenko <phcoder@gmail.com>
* disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned * disk/i386/pc/biosdisk.c (grub_biosdisk_read): Handle non-2048 aligned

View file

@ -441,7 +441,7 @@ grub_disk_read (grub_disk_t disk, grub_disk_addr_t sector,
grub_errno = GRUB_ERR_NONE; grub_errno = GRUB_ERR_NONE;
num = ((size + real_offset + pos + GRUB_DISK_SECTOR_SIZE - 1) num = ((size + real_offset + GRUB_DISK_SECTOR_SIZE - 1)
>> GRUB_DISK_SECTOR_BITS); >> GRUB_DISK_SECTOR_BITS);
p = grub_realloc (tmp_buf, num << GRUB_DISK_SECTOR_BITS); p = grub_realloc (tmp_buf, num << GRUB_DISK_SECTOR_BITS);
@ -458,7 +458,7 @@ grub_disk_read (grub_disk_t disk, grub_disk_addr_t sector,
goto finish; goto finish;
} }
grub_memcpy (buf, tmp_buf + pos + real_offset, size); grub_memcpy (buf, tmp_buf + real_offset, size);
/* Call the read hook, if any. */ /* Call the read hook, if any. */
if (disk->read_hook) if (disk->read_hook)