From dae9b0d48a94683c0a49e88e4b739482788d7175 Mon Sep 17 00:00:00 2001
From: rsc <rsc>
Date: Sun, 31 May 2009 00:31:20 +0000
Subject: [PATCH] missed this file in last checkin

---
 sysproc.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/sysproc.c b/sysproc.c
index 990a426..da01b5b 100644
--- a/sysproc.c
+++ b/sysproc.c
@@ -1,4 +1,5 @@
 #include "types.h"
+#include "x86.h"
 #include "defs.h"
 #include "param.h"
 #include "mmu.h"
@@ -13,6 +14,9 @@ sys_fork(void)
   if((np = copyproc(cp)) == 0)
     return -1;
   pid = np->pid;
+
+  // Clear %eax so that fork returns 0 in the child.
+  np->tf->eax = 0;
   np->state = RUNNABLE;
   return pid;
 }
@@ -54,7 +58,8 @@ sys_sbrk(void)
 
   if(argint(0, &n) < 0)
     return -1;
-  if((addr = growproc(n)) < 0)
+  addr = cp->sz;
+  if(growproc(n) < 0)
     return -1;
   return addr;
 }
-- 
GitLab