Mercurial > hg > Members > innparusu > xv6-rpi
diff src/syscall.c @ 32:96af12a50fdb
fix cbc_read
author | mir3636 |
---|---|
date | Tue, 22 Jan 2019 15:48:35 +0900 |
parents | 96a5833d0d82 |
children | a7144583914c |
line wrap: on
line diff
--- a/src/syscall.c Fri Jan 18 18:20:02 2019 +0900 +++ b/src/syscall.c Tue Jan 22 15:48:35 2019 +0900 @@ -150,7 +150,10 @@ } __code cbc_ret(int ret){ - proc->tf->r0 = ret; + int num = proc->cbc_arg.cbc_console_arg.num; + if (num != SYS_exec) { + proc->tf->r0 = ret; + } goto cbc_trap_return(); } @@ -166,7 +169,7 @@ //cprintf ("syscall(%d) from %s(%d)\n", num, proc->name, proc->pid); if((num >= NELEM(syscalls)) && (num <= NELEM(cbccodes)) && cbccodes[num]) { - + proc->cbc_arg.cbc_console_arg.num = num; goto (cbccodes[num])(cbc_ret); }