diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-04-01 10:38:27 +0200 |
|---|---|---|
| committer | Amlal El Mahrouss <amlal@nekernel.org> | 2025-04-01 10:38:27 +0200 |
| commit | 1c3b37123cef3fa9c69099bc6228d7b4a082ee90 (patch) | |
| tree | 34c23cc3508114f3985289f6cb4e915454604426 /dev/boot/src/New+Delete.cc | |
| parent | cb4d1fbb3a8f31641147f43375c7d66f693ef3ea (diff) | |
ahci, boot: bump, and working on a patch.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'dev/boot/src/New+Delete.cc')
| -rw-r--r-- | dev/boot/src/New+Delete.cc | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/dev/boot/src/New+Delete.cc b/dev/boot/src/New+Delete.cc index b7941e29..b9982923 100644 --- a/dev/boot/src/New+Delete.cc +++ b/dev/boot/src/New+Delete.cc @@ -19,7 +19,7 @@ void* operator new(size_t sz) void* buf = nullptr; while (BS->AllocatePool(EfiMemoryType::EfiLoaderData, sz, &buf) != kEfiOk) - BS->FreePool(buf); + ; return buf; } @@ -39,6 +39,9 @@ void* operator new[](size_t sz) /// @param buf the object. void operator delete(void* buf) { + if (!buf) + return; + BS->FreePool(buf); } @@ -46,6 +49,9 @@ void operator delete(void* buf) /// @param buf the object. void operator delete[](void* buf) { + if (!buf) + return; + BS->FreePool(buf); } @@ -54,6 +60,9 @@ void operator delete[](void* buf) /// @param size it's size. void operator delete(void* buf, size_t size) { + if (!buf) + return; + BS->FreePool(buf); } |
