diff options
author | Michael Sevakis <jethead71@rockbox.org> | 2007-04-12 05:18:53 +0000 |
---|---|---|
committer | Michael Sevakis <jethead71@rockbox.org> | 2007-04-12 05:18:53 +0000 |
commit | 6c9a433ca15f40f268fe26515c9ba1629dc00c3d (patch) | |
tree | b8fb9c767286b06783922ab7270a713a6d8da11b | |
parent | 4c151dcb2199caafe0c1fd4d88ab66b6acdf6bd6 (diff) | |
download | rockbox-6c9a433ca15f40f268fe26515c9ba1629dc00c3d.tar.gz rockbox-6c9a433ca15f40f268fe26515c9ba1629dc00c3d.zip |
Add a check to make sure initializing the BSS section doesn't pass a negative size to memset.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13116 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r-- | apps/plugin.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/apps/plugin.c b/apps/plugin.c index 276bf1b078..1db0253c4e 100644 --- a/apps/plugin.c +++ b/apps/plugin.c | |||
@@ -577,7 +577,8 @@ int plugin_load(const char* plugin, void* parameter) | |||
577 | plugin_size = hdr->end_addr - pluginbuf; | 577 | plugin_size = hdr->end_addr - pluginbuf; |
578 | 578 | ||
579 | /* zero out bss area only, above guards end of pluginbuf */ | 579 | /* zero out bss area only, above guards end of pluginbuf */ |
580 | memset(pluginbuf + readsize, 0, plugin_size - readsize); | 580 | if (plugin_size > readsize) |
581 | memset(pluginbuf + readsize, 0, plugin_size - readsize); | ||
581 | #endif | 582 | #endif |
582 | 583 | ||
583 | plugin_loaded = true; | 584 | plugin_loaded = true; |