summaryrefslogtreecommitdiffhomepage
path: root/src/kernel/KernelKit/UserProcessScheduler.inl
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/KernelKit/UserProcessScheduler.inl')
-rw-r--r--src/kernel/KernelKit/UserProcessScheduler.inl12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/kernel/KernelKit/UserProcessScheduler.inl b/src/kernel/KernelKit/UserProcessScheduler.inl
index 625cadc8..e9cf3135 100644
--- a/src/kernel/KernelKit/UserProcessScheduler.inl
+++ b/src/kernel/KernelKit/UserProcessScheduler.inl
@@ -20,16 +20,19 @@ namespace Kernel {
/** @brief Free pointer/file from usage. */
/***********************************************************************************/
-template <typename T>
+template <class T>
BOOL UserProcess::Delete(ErrorOr<T*> ptr) {
- if (!ptr) return No;
+ if (!ptr) {
+ kout << "UserProcess: Ptr is nils.\r";
+ return No;
+ }
if (!this->HeapTree) {
kout << "UserProcess: Heap is empty.\r";
return No;
}
- ProcessHeapTree<VoidPtr>* entry = this->HeapTree;
+ ProcessHeapTree<Any>* entry = this->HeapTree;
while (entry != nullptr) {
if (entry->Entry == ptr.Leak().Leak()) {
@@ -51,8 +54,9 @@ BOOL UserProcess::Delete(ErrorOr<T*> ptr) {
entry = entry->Next;
}
- kout << "UserProcess: Trying to free a pointer which doesn't exist.\r";
+ (Void)(kout << "UserProcess: Pointer not found in heap." << kendl);
+ // crash.
this->Crash();
return No;