diff options
Diffstat (limited to 'dev/Kernel/src')
| -rw-r--r-- | dev/Kernel/src/CodeMgr.cc | 3 | ||||
| -rw-r--r-- | dev/Kernel/src/UserProcessScheduler.cc | 2 | ||||
| -rw-r--r-- | dev/Kernel/src/Utils.cc | 4 |
3 files changed, 6 insertions, 3 deletions
diff --git a/dev/Kernel/src/CodeMgr.cc b/dev/Kernel/src/CodeMgr.cc index 7946d424..3811b4eb 100644 --- a/dev/Kernel/src/CodeMgr.cc +++ b/dev/Kernel/src/CodeMgr.cc @@ -10,10 +10,13 @@ namespace Kernel { + /***********************************************************************************/ /// @brief Executes a new process from a function. Kernel code only. /// @note This sets up a new stack, anything on the main function that calls the Kernel will not be accessible. /// @param main the start of the process. /// @return if the process was started or not. + /***********************************************************************************/ + ProcessID rtl_create_process(rtl_main_kind main, const Char* process_name) noexcept { if (!process_name || diff --git a/dev/Kernel/src/UserProcessScheduler.cc b/dev/Kernel/src/UserProcessScheduler.cc index cdf5dcee..4560f6eb 100644 --- a/dev/Kernel/src/UserProcessScheduler.cc +++ b/dev/Kernel/src/UserProcessScheduler.cc @@ -285,7 +285,7 @@ namespace Kernel ProcessID UserProcessScheduler::Spawn(UserProcess* process) { if (!process || - !process->Image) + !process->Image.HasCode()) { return kProcessInvalidID; } diff --git a/dev/Kernel/src/Utils.cc b/dev/Kernel/src/Utils.cc index c0574dca..277de6ce 100644 --- a/dev/Kernel/src/Utils.cc +++ b/dev/Kernel/src/Utils.cc @@ -117,9 +117,9 @@ namespace Kernel return index; } - const Char* alloc_string(const Char* text) + const Char* rt_alloc_string(const Char* text) { - if (!text) + if (!text[0]) return nullptr; const Char* string = new Char[rt_string_len(text)]; |
