diff options
author | Jonathan Golder <jonathan.golder@kurz-elektronik.de> | 2017-02-24 17:46:10 +0100 |
---|---|---|
committer | Anatolij Gustschin <agust@denx.de> | 2017-02-27 16:08:06 +0100 |
commit | 3cc6e7070dea2c81ef8f052740e9a9cc791c57f4 (patch) | |
tree | 868463180cc32b892ad15a8408a3f44d7402308b /common | |
parent | a0f3e3df4adc451bf56159c0672e570f9c934ee8 (diff) | |
download | u-boot-imx-3cc6e7070dea2c81ef8f052740e9a9cc791c57f4.zip u-boot-imx-3cc6e7070dea2c81ef8f052740e9a9cc791c57f4.tar.gz u-boot-imx-3cc6e7070dea2c81ef8f052740e9a9cc791c57f4.tar.bz2 |
splash: Prevent splash_load_fs from writing to 0x0
Passing NULL to fs_read() for actread value results in hanging U-Boot
at least on our ARM plattform (TI AM335x). Since fs_read() and
following functions do not catch nullpointers, writing to 0x0 occurs.
Passing a local dummy var instead of NULL solves this issue.
Signed-off-by: Jonathan Golder <jonathan.golder@kurz-elektronik.de>
Cc: Anatolij Gustschin <agust@denx.de>
Diffstat (limited to 'common')
-rw-r--r-- | common/splash_source.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/common/splash_source.c b/common/splash_source.c index a5eeb3f..d1647c8 100644 --- a/common/splash_source.c +++ b/common/splash_source.c @@ -216,6 +216,7 @@ static int splash_load_fs(struct splash_location *location, u32 bmp_load_addr) { int res = 0; loff_t bmp_size; + loff_t actread; char *splash_file; splash_file = getenv("splashfile"); @@ -251,7 +252,7 @@ static int splash_load_fs(struct splash_location *location, u32 bmp_load_addr) } splash_select_fs_dev(location); - res = fs_read(splash_file, bmp_load_addr, 0, 0, NULL); + res = fs_read(splash_file, bmp_load_addr, 0, 0, &actread); out: if (location->ubivol != NULL) |