diff options
| author | Amlal El Mahrouss <amlal@nekernel.org> | 2025-04-01 10:40:19 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-01 10:40:19 +0200 |
| commit | 48d0df78c872f7b843f2444a6bcfa41438dc736e (patch) | |
| tree | 34c23cc3508114f3985289f6cb4e915454604426 /dev/boot/src/New+Delete.cc | |
| parent | f88f6074479c627529559f690bf836960d5a6378 (diff) | |
| parent | 1c3b37123cef3fa9c69099bc6228d7b4a082ee90 (diff) | |
Merge pull request #5 from amlel-el-mahrouss/dev
pr/ahci: important patches.
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); } |
