diff options
Diffstat (limited to 'dev/ZKAKit/src/CodeMgr.cc')
| -rw-r--r-- | dev/ZKAKit/src/CodeMgr.cc | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/dev/ZKAKit/src/CodeMgr.cc b/dev/ZKAKit/src/CodeMgr.cc index 5b5d471b..a4502f58 100644 --- a/dev/ZKAKit/src/CodeMgr.cc +++ b/dev/ZKAKit/src/CodeMgr.cc @@ -16,16 +16,14 @@ namespace Kernel /// @return if the process was started or not. ProcessID rtl_create_process(MainKind main, const Char* process_name) noexcept { - kcout << "Validating process header...\r"; - - if (!main) - return No; + if (!main || + !process_name || + *process_name == 0) + return kProcessInvalidID; UserProcess* process_hdr = new UserProcess(); - kcout << "Setting-up process data...\r"; - - process_hdr->Code = reinterpret_cast<VoidPtr>(main); + process_hdr->Image.fCode = reinterpret_cast<VoidPtr>(main); process_hdr->Kind = UserProcess::kExectuableKind; process_hdr->StackSize = kib_cast(16); @@ -33,8 +31,6 @@ namespace Kernel ProcessID id = UserProcessScheduler::The().Spawn(process_hdr); - delete process_hdr; - return id; } } // namespace Kernel |
