summaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-02-24 06:14:15 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-02-24 06:14:15 +0100
commitf7a7bd424ebe4322cd3b18de6da3e39b790c0215 (patch)
treed7367ccc5e8a7d9beb3d7f89823f17e8f6dc2856 /src
parent5d49ca9e70900fd04e572ebf1febe07051c743d7 (diff)
chore: libDDK: DDK improvements and tweaks.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'src')
-rw-r--r--src/libDDK/DriverKit/ObjectKit/driver_base.h10
-rw-r--r--src/libDDK/src/ddk_abi_cxx.cpp4
-rw-r--r--src/libDDK/src/ddk_driver_base.cpp1
3 files changed, 10 insertions, 5 deletions
diff --git a/src/libDDK/DriverKit/ObjectKit/driver_base.h b/src/libDDK/DriverKit/ObjectKit/driver_base.h
index 909bfe7b..f5811fb2 100644
--- a/src/libDDK/DriverKit/ObjectKit/driver_base.h
+++ b/src/libDDK/DriverKit/ObjectKit/driver_base.h
@@ -1,9 +1,9 @@
-// Copyright 2024-2025, Amlal El Mahrouss (amlal@nekernel.org)
+// Copyright 2024-2026, Amlal El Mahrouss (amlal@nekernel.org)
// Licensed under the Apache License, Version 2.0 (see LICENSE file)
// Official repository: https://github.com/nekernel-org/nekernel
-#ifndef DRIVERKIT_DRIVER_BASE_H
-#define DRIVERKIT_DRIVER_BASE_H
+#ifndef DRIVERKIT_OBJECTKIT_DRIVER_BASE_H
+#define DRIVERKIT_OBJECTKIT_DRIVER_BASE_H
#include <libDDK/DriverKit/macros.h>
@@ -25,8 +25,8 @@ class IDriverBase {
IDriverBase() = default;
virtual ~IDriverBase() = default;
- IDriverBase& operator=(const IDriverBase&) = delete;
- IDriverBase(const IDriverBase&) = delete;
+ IDriverBase& operator=(const IDriverBase&) = default;
+ IDriverBase(const IDriverBase&) = default;
using PtrType = void*;
diff --git a/src/libDDK/src/ddk_abi_cxx.cpp b/src/libDDK/src/ddk_abi_cxx.cpp
index a6232a89..3fa7dd78 100644
--- a/src/libDDK/src/ddk_abi_cxx.cpp
+++ b/src/libDDK/src/ddk_abi_cxx.cpp
@@ -5,6 +5,8 @@
#include <DriverKit/ddk.h>
void* operator new(size_t sz) {
+ if (!sz) ++sz;
+
return ::kalloc(sz);
}
@@ -13,6 +15,8 @@ void operator delete(void* ptr) {
}
void* operator new[](size_t sz) {
+ if (!sz) ++sz;
+
return ::kalloc(sz);
}
diff --git a/src/libDDK/src/ddk_driver_base.cpp b/src/libDDK/src/ddk_driver_base.cpp
index 5aad76d2..0a1f8a99 100644
--- a/src/libDDK/src/ddk_driver_base.cpp
+++ b/src/libDDK/src/ddk_driver_base.cpp
@@ -3,3 +3,4 @@
// Official repository: https://github.com/nekernel-org/nekernel
#include <DriverKit/ObjectKit/driver_base.h>
+