mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-09-21 15:12:04 +00:00
FAT: get_fatent: Fix FAT boundary check
startblock must be taken into account in order not to read past the end of the FAT. Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com> Cc: Wolfgang Denk <wd@denx.de>
This commit is contained in:
parent
9795e07b04
commit
8006dd2e57
1 changed files with 2 additions and 2 deletions
|
@ -207,8 +207,8 @@ static __u32 get_fatent(fsdata *mydata, __u32 entry)
|
|||
__u32 fatlength = mydata->fatlength;
|
||||
__u32 startblock = bufnum * FATBUFBLOCKS;
|
||||
|
||||
if (getsize > fatlength)
|
||||
getsize = fatlength;
|
||||
if (startblock + getsize > fatlength)
|
||||
getsize = fatlength - startblock;
|
||||
|
||||
fatlength *= mydata->sect_size; /* We want it in bytes now */
|
||||
startblock += mydata->fat_sect; /* Offset from start of disk */
|
||||
|
|
Loading…
Reference in a new issue