loader: initialize all memory in the ObjectFile objects.
Some bare metal build flows seem to build binaries that we aren't necessarily expecting. Initialize everything to 0, so we don't make any assumptions about what is or isn't in the binary.
This commit is contained in:
@@ -248,6 +248,7 @@ ElfObject::ElfObject(const string &_filename, int _fd,
|
||||
|
||||
// initialize segment sizes to 0 in case they're not present
|
||||
text.size = data.size = bss.size = 0;
|
||||
text.baseAddr = data.baseAddr = bss.baseAddr = 0;
|
||||
|
||||
int secIdx = 1;
|
||||
Elf_Scn *section;
|
||||
|
||||
@@ -53,7 +53,7 @@ ObjectFile::ObjectFile(const string &_filename, int _fd,
|
||||
size_t _len, uint8_t *_data,
|
||||
Arch _arch, OpSys _opSys)
|
||||
: filename(_filename), descriptor(_fd), fileData(_data), len(_len),
|
||||
arch(_arch), opSys(_opSys)
|
||||
arch(_arch), opSys(_opSys), globalPtr(0)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user