Don't return NULL from successful mremap

This commit is contained in:
Theodore Dubois 2018-11-25 17:39:17 -08:00
parent 28772cd6a0
commit e95a2acbdd
2 changed files with 9 additions and 1 deletions

5
CHAGELOG.md Normal file
View File

@ -0,0 +1,5 @@
# Changelog
## Build 33 (unreleased)
### Fixed
- Segfault while doing large download with pip, due to returning NULL from successful mremap

View File

@ -110,7 +110,10 @@ int_t sys_mremap(addr_t addr, dword_t old_len, dword_t new_len, dword_t flags) {
pages_t extra_pages = new_pages - old_pages;
if (!pt_is_hole(current->mem, extra_start, extra_pages))
return _ENOMEM;
return pt_map_nothing(current->mem, extra_start, extra_pages, pt_flags);
int err = pt_map_nothing(current->mem, extra_start, extra_pages, pt_flags);
if (err < 0)
return err;
return addr;
}
int_t sys_mprotect(addr_t addr, uint_t len, int_t prot) {