diff --git a/sys/ld/elf.c b/sys/ld/elf.c index 5601a2f..8cbc7ad 100644 --- a/sys/ld/elf.c +++ b/sys/ld/elf.c @@ -176,6 +176,7 @@ static int map_image(struct elf_image *image) if (phdr.p_flags & PF_W) { lseek(image->e_fd, phdr.p_offset, SEEK_SET); void *dst = (void *)image->e_base + phdr.p_vaddr; + memset(dst, 0x0, phdr.p_memsz); r = read(image->e_fd, dst, phdr.p_filesz); if (r < 0) { return -r;