diff options
| author | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-06 14:52:09 +0100 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal.elmahrouss@icloud.com> | 2025-01-06 14:53:26 +0100 |
| commit | 8c179d8801df7f5f77fe7ec65a0a98b7901dad09 (patch) | |
| tree | 788ccdfd9e56e1b0402cc7b4b1af7d792888fd68 /dev/Boot/src | |
| parent | e0633b442140d49e08af6759bd07c89e16ef0e2a (diff) | |
KAN-11: Half-done on AMD64, not yet started on ARM64.
KAN-12: Found GPF issue on DriveMgr, working on it.
ADD: Improvement of the BootThread class.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/Boot/src')
| -rw-r--r-- | dev/Boot/src/BootThread.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/dev/Boot/src/BootThread.cc b/dev/Boot/src/BootThread.cc index e874c758..61f3e805 100644 --- a/dev/Boot/src/BootThread.cc +++ b/dev/Boot/src/BootThread.cc @@ -185,15 +185,19 @@ namespace Boot if (own_stack) { - return rt_jump_to_address(fStartAddress, fHandover, &fStack[mib_cast(8) - 1]); + rt_jump_to_address(fStartAddress, fHandover, &fStack[mib_cast(8) - 1]); } else { - delete[] fStack; + if (fStack) + delete[] fStack; + + fStack = nullptr; + return reinterpret_cast<HEL::HandoverProc>(fStartAddress)(fHandover); } - return NO; + return kEfiOk; } const Char* BootThread::GetName() |
