ELF: Critical bugfix.. BSS was not being cleared

This commit is contained in:
Gregory Nutt 2014-09-12 10:32:23 -06:00
parent e411e8aa3f
commit 1329c29ecd

View File

@ -43,6 +43,7 @@
#include <stdint.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <elf32.h>
#include <assert.h>
@ -200,6 +201,15 @@ static inline int elf_loadfile(FAR struct elf_loadinfo_s *loadinfo)
}
}
/* If there is no data in an allocated section, then the allocated
* section must be cleared.
*/
else
{
memset(*pptr, 0, shdr->sh_size);
}
/* Update sh_addr to point to copy in memory */
bvdbg("%d. %08lx->%08lx\n", i,