mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 14:41:39 +00:00
fbdev/broadsheetfb: fix memory leak
static code analysis from cppcheck reports: [drivers/video/fbdev/broadsheetfb.c:673]: (error) Memory leak: sector_buffer sector_buffer is not being kfree'd on each call to broadsheet_spiflash_rewrite_sector(), so free it. Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
This commit is contained in:
parent
d9e020197d
commit
ef6899cdc8
@ -636,7 +636,7 @@ static int broadsheet_spiflash_rewrite_sector(struct broadsheetfb_par *par,
|
||||
err = broadsheet_spiflash_read_range(par, start_sector_addr,
|
||||
data_start_addr, sector_buffer);
|
||||
if (err)
|
||||
return err;
|
||||
goto out;
|
||||
}
|
||||
|
||||
/* now we copy our data into the right place in the sector buffer */
|
||||
@ -657,7 +657,7 @@ static int broadsheet_spiflash_rewrite_sector(struct broadsheetfb_par *par,
|
||||
err = broadsheet_spiflash_read_range(par, tail_start_addr,
|
||||
tail_len, sector_buffer + tail_start_addr);
|
||||
if (err)
|
||||
return err;
|
||||
goto out;
|
||||
}
|
||||
|
||||
/* if we got here we have the full sector that we want to rewrite. */
|
||||
@ -665,11 +665,13 @@ static int broadsheet_spiflash_rewrite_sector(struct broadsheetfb_par *par,
|
||||
/* first erase the sector */
|
||||
err = broadsheet_spiflash_erase_sector(par, start_sector_addr);
|
||||
if (err)
|
||||
return err;
|
||||
goto out;
|
||||
|
||||
/* now write it */
|
||||
err = broadsheet_spiflash_write_sector(par, start_sector_addr,
|
||||
sector_buffer, sector_size);
|
||||
out:
|
||||
kfree(sector_buffer);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user