summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKAKit/src
diff options
context:
space:
mode:
authorAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-11-23 13:50:09 +0100
committerAmlal EL Mahrouss <amlalelmahrouss@icloud.com>2024-11-23 13:50:09 +0100
commit476e896ba9169b4b71c1e80d3e44dd006934b3e5 (patch)
tree0070fb7ba0ed6c20826df45fbffae31101f11ffa /dev/ZKAKit/src
parentd2d6b4cb728e3e80c10d6e3bbd72e6f7b3dfea9b (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.cc2
-rw-r--r--dev/ZKAKit/src/IPEFDLLObject.cc11
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;