changeset 372:6fc38a3f38f9

fix return val
author anatofuz
date Mon, 06 Jul 2020 11:25:47 +0900
parents 96655612f48c
children 097a58a16a04
files src/impl/SyscallDispatchImpl.cbc src/trap.cbc
diffstat 2 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/impl/SyscallDispatchImpl.cbc	Sun Jul 05 15:18:02 2020 +0900
+++ b/src/impl/SyscallDispatchImpl.cbc	Mon Jul 06 11:25:47 2020 +0900
@@ -77,8 +77,8 @@
     struct SyscallDispatch* syscall_dispatch  = new SyscallDispatch();
     struct SyscallDispatchImpl* syscall_dispatch_impl = new SyscallDispatchImpl();
     syscall_dispatch->syscall_dispatch = (union Data*)syscall_dispatch_impl;
-    syscall_dispatch->dispatch = C_dispatchSyscallImpl;
-    return syscall;
+    syscall_dispatch->dispatch = C_dispatchSyscallDispatchImpl;
+    return syscall_dispatch;
 }
 
 __code dispatchSyscallDispatchImpl(struct SyscallDispatchImpl* syscall_dispatch, __code next(...)) {
@@ -97,7 +97,7 @@
         proc->cbc_arg.cbc_console_arg.num = num;
         __code *syscalls = kcontext->syscalls;
 
-        goto (cbccodes[num])(kernelRet->cbc_return);
+        goto (cbccodes[num])(cbc_ret);
         //goto meta(&proc->cbc_context, cbccodes[num]);
     }
 
--- a/src/trap.cbc	Sun Jul 05 15:18:02 2020 +0900
+++ b/src/trap.cbc	Mon Jul 06 11:25:47 2020 +0900
@@ -15,6 +15,7 @@
 extern __code exit(void);
 
 extern SyscallDispatch* createSyscallDispatchImpl(struct Context*);
+extern KernelRet* createKernelRetImpl(struct Context*);
 
 __ncode cbc_swi_handler(struct trapframe* r) {
     struct Context*         kernel                = &kernel_context->context;