mirror of
https://source.denx.de/u-boot/u-boot.git
synced 2025-08-07 15:56:59 +02:00
fs: ext4fs: Perform NULL check before dereference
In the function put_ext4 there is a NULL check for fs->dev_desc but this has already been derefenced twice before this happens. Refactor the code a bit to put the NULL check first. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org>
This commit is contained in:
parent
36f05e6224
commit
2d6221262e
@ -198,16 +198,18 @@ void put_ext4(uint64_t off, const void *buf, uint32_t size)
|
||||
uint64_t remainder;
|
||||
unsigned char *temp_ptr = NULL;
|
||||
struct ext_filesystem *fs = get_fs();
|
||||
int log2blksz = fs->dev_desc->log2blksz;
|
||||
int log2blksz;
|
||||
|
||||
if (!fs->dev_desc)
|
||||
return;
|
||||
|
||||
ALLOC_CACHE_ALIGN_BUFFER(unsigned char, sec_buf, fs->dev_desc->blksz);
|
||||
|
||||
log2blksz = fs->dev_desc->log2blksz;
|
||||
startblock = off >> log2blksz;
|
||||
startblock += part_offset;
|
||||
remainder = off & (uint64_t)(fs->dev_desc->blksz - 1);
|
||||
|
||||
if (fs->dev_desc == NULL)
|
||||
return;
|
||||
|
||||
if ((startblock + (size >> log2blksz)) >
|
||||
(part_offset + fs->total_sect)) {
|
||||
printf("part_offset is " LBAFU "\n", part_offset);
|
||||
|
Loading…
Reference in New Issue
Block a user