diff options
| author | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-11-23 13:50:09 +0100 |
|---|---|---|
| committer | Amlal EL Mahrouss <amlalelmahrouss@icloud.com> | 2024-11-23 13:50:09 +0100 |
| commit | 476e896ba9169b4b71c1e80d3e44dd006934b3e5 (patch) | |
| tree | 0070fb7ba0ed6c20826df45fbffae31101f11ffa /dev/ZKAKit/src | |
| parent | d2d6b4cb728e3e80c10d6e3bbd72e6f7b3dfea9b (diff) | |
Kernel: Fix memory leaks and document the DLL dyld.
Kernel: Document Drive manager of minoskrnl.
Signed-off-by: Amlal EL Mahrouss <amlalelmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKAKit/src')
| -rw-r--r-- | dev/ZKAKit/src/DriveMgr.cc | 2 | ||||
| -rw-r--r-- | dev/ZKAKit/src/IPEFDLLObject.cc | 11 |
2 files changed, 6 insertions, 7 deletions
diff --git a/dev/ZKAKit/src/DriveMgr.cc b/dev/ZKAKit/src/DriveMgr.cc index 4946e714..d2c08c19 100644 --- a/dev/ZKAKit/src/DriveMgr.cc +++ b/dev/ZKAKit/src/DriveMgr.cc @@ -14,7 +14,7 @@ /***********************************************************************************/ /// @file DriveMgr.cc -/// @brief Drive Manager API. +/// @brief Drive Manager of minoskrnl. /***********************************************************************************/ namespace Kernel diff --git a/dev/ZKAKit/src/IPEFDLLObject.cc b/dev/ZKAKit/src/IPEFDLLObject.cc index b72421d8..67150854 100644 --- a/dev/ZKAKit/src/IPEFDLLObject.cc +++ b/dev/ZKAKit/src/IPEFDLLObject.cc @@ -46,7 +46,6 @@ EXTERN_C IDLL rtl_init_dll(UserProcess* header) if (!dll_obj) { header->Crash(); - return nullptr; } @@ -54,22 +53,22 @@ EXTERN_C IDLL rtl_init_dll(UserProcess* header) if (!dll_obj->Get()) { + tls_delete_class(dll_obj); header->Crash(); - return nullptr; } - dll_obj->Get()->fImageObject = + dll_obj->Get()->ImageObject = header->Image.fBlob; - if (!dll_obj->Get()->fImageObject) + if (!dll_obj->Get()->ImageObject) { + tls_delete_class(dll_obj); header->Crash(); - return nullptr; } - dll_obj->Get()->fImageEntrypointOffset = + dll_obj->Get()->ImageEntrypointOffset = dll_obj->Load<VoidPtr>(kPefStart, rt_string_len(kPefStart, 0), kPefCode); return dll_obj; |
