summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrans Kaashoek <[email protected]>2018-08-30 13:30:50 -0400
committerFrans Kaashoek <[email protected]>2018-08-30 13:30:50 -0400
commit171c2cc6b8fd59b69a5b461a3c74eec6569662c8 (patch)
tree43ff8de04fab8d06680dc06dcb72d20def391900
parent26108a3b99507c1edeed0dab8cb25bab5a330e75 (diff)
downloadxv6-labs-171c2cc6b8fd59b69a5b461a3c74eec6569662c8.tar.gz
xv6-labs-171c2cc6b8fd59b69a5b461a3c74eec6569662c8.tar.bz2
xv6-labs-171c2cc6b8fd59b69a5b461a3c74eec6569662c8.zip
thanks mataness
-rw-r--r--vm.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/vm.c b/vm.c
index 3f71b6a..7134cff 100644
--- a/vm.c
+++ b/vm.c
@@ -332,8 +332,10 @@ copyuvm(pde_t *pgdir, uint sz)
if((mem = kalloc()) == 0)
goto bad;
memmove(mem, (char*)P2V(pa), PGSIZE);
- if(mappages(d, (void*)i, PGSIZE, V2P(mem), flags) < 0)
+ if(mappages(d, (void*)i, PGSIZE, V2P(mem), flags) < 0) {
+ kfree(mem);
goto bad;
+ }
}
return d;