Multiboot loader: Allow bss section, add sanity check against memory size
This commit is contained in:
parent
9b463626fe
commit
7c9cdc75d3
|
@ -904,9 +904,13 @@ CPU.prototype.load_multiboot = function(buffer)
|
|||
// virtual and physical address must be equal
|
||||
dbg_assert(program.paddr === program.vaddr);
|
||||
dbg_assert(program.filesz <= program.memsz);
|
||||
dbg_assert(program.paddr + program.memsz < this.memory_size[0]);
|
||||
|
||||
let blob = new Uint8Array(buffer, program.offset, program.filesz);
|
||||
this.write_blob(blob, program.paddr);
|
||||
if(program.filesz) // offset mighty be outside of buffer if filesz is 0
|
||||
{
|
||||
let blob = new Uint8Array(buffer, program.offset, program.filesz);
|
||||
this.write_blob(blob, program.paddr);
|
||||
}
|
||||
}
|
||||
else if(program.type === 4 ||
|
||||
program.type === 0x6474e550 ||
|
||||
|
|
Loading…
Reference in a new issue