summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKA/KernelKit
diff options
context:
space:
mode:
authorAmlal <amlal@el-mahrouss-logic.com>2024-09-19 15:43:25 +0200
committerAmlal <amlal@el-mahrouss-logic.com>2024-09-19 15:43:25 +0200
commit5f4a9440e97d6602222c93e8dcab8c483800a462 (patch)
treedd0ce2e4e27174a8ccc28d63ff3f79cb4df6f374 /dev/ZKA/KernelKit
parent6417aa8e514b55e3c13b0dc7ed5035bc0b5e2a5a (diff)
IMP: Heap.hxx, Add mm_delete_class, which calls C++ destructor and then frees it.
FIX: BMPMgr.cxx, fix cast issue. RM: Remove filesystem initialization code for now, need to have a clear structure depending on product. Signed-off-by: Amlal <amlal@el-mahrouss-logic.com>
Diffstat (limited to 'dev/ZKA/KernelKit')
-rw-r--r--dev/ZKA/KernelKit/Heap.hxx9
1 files changed, 8 insertions, 1 deletions
diff --git a/dev/ZKA/KernelKit/Heap.hxx b/dev/ZKA/KernelKit/Heap.hxx
index 044004dc..41779146 100644
--- a/dev/ZKA/KernelKit/Heap.hxx
+++ b/dev/ZKA/KernelKit/Heap.hxx
@@ -23,7 +23,7 @@ namespace Kernel
/// @brief Declare a new size for heap_ptr.
/// @param heap_ptr the pointer.
/// @return
- voidPtr mm_realloc_ke_heap(voidPtr heap_ptr, SizeT new_sz);
+ VoidPtr mm_realloc_ke_heap(voidPtr heap_ptr, SizeT new_sz);
/// @brief Check if pointer is a valid Kernel pointer.
/// @param heap_ptr the pointer
@@ -53,6 +53,13 @@ namespace Kernel
T* ptr = new T(move(args)...);
return ptr;
}
+
+ template <typename T>
+ inline Void mm_delete_class(T* cls)
+ {
+ cls->~T();
+ delete cls;
+ }
} // namespace Kernel
#endif // !_INC_KERNEL_HEAP_HXX_