summaryrefslogtreecommitdiffhomepage
path: root/Private/KernelKit/ThreadLocalStorage.inl
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-05-05 21:10:18 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-05-05 21:10:18 +0200
commitf95d8bf159d10b5a9521dcaa0bc37aa0e9dfc02b (patch)
treebf8186f1a0521a64983bb0bca4f7b54883542195 /Private/KernelKit/ThreadLocalStorage.inl
parent5a903c1d8f80ca8d7bc5fbea0aea710ce0133f9d (diff)
MHR-23: Add run_format.sh, kernel patches.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/KernelKit/ThreadLocalStorage.inl')
-rw-r--r--Private/KernelKit/ThreadLocalStorage.inl45
1 files changed, 25 insertions, 20 deletions
diff --git a/Private/KernelKit/ThreadLocalStorage.inl b/Private/KernelKit/ThreadLocalStorage.inl
index 2b920d0f..9c80d9b8 100644
--- a/Private/KernelKit/ThreadLocalStorage.inl
+++ b/Private/KernelKit/ThreadLocalStorage.inl
@@ -11,40 +11,45 @@
#endif
template <typename T>
-inline T* tls_new_ptr(void) {
- using namespace NewOS;
+inline T* tls_new_ptr(void)
+{
+ using namespace NewOS;
- MUST_PASS(ProcessScheduler::Shared().Leak().GetCurrent());
+ MUST_PASS(ProcessScheduler::Shared().Leak().GetCurrent());
- auto ref_process = ProcessScheduler::Shared().Leak().GetCurrent();
+ auto ref_process = ProcessScheduler::Shared().Leak().GetCurrent();
- T* pointer = (T*)ref_process.Leak().New(sizeof(T));
- return pointer;
+ T* pointer = (T*)ref_process.Leak().New(sizeof(T));
+ return pointer;
}
//! @brief TLS delete implementation.
template <typename T>
-inline bool tls_delete_ptr(T* ptr) {
- if (!ptr) return false;
+inline bool tls_delete_ptr(T* ptr)
+{
+ if (!ptr)
+ return false;
- using namespace NewOS;
+ using namespace NewOS;
- MUST_PASS(ProcessScheduler::Shared().Leak().GetCurrent());
+ MUST_PASS(ProcessScheduler::Shared().Leak().GetCurrent());
- ptr->~T();
+ ptr->~T();
- auto ref_process = ProcessScheduler::Shared().Leak().GetCurrent();
- return ref_process.Leak().Delete(ptr, sizeof(T));
+ auto ref_process = ProcessScheduler::Shared().Leak().GetCurrent();
+ return ref_process.Leak().Delete(ptr, sizeof(T));
}
template <typename T, typename... Args>
-T* tls_new_class(Args&&... args) {
- T* ptr = tls_new_ptr<T>();
+T* tls_new_class(Args&&... args)
+{
+ T* ptr = tls_new_ptr<T>();
- if (ptr) {
- *ptr = T(NewOS::forward(args)...);
- return ptr;
- }
+ if (ptr)
+ {
+ *ptr = T(NewOS::forward(args)...);
+ return ptr;
+ }
- return nullptr;
+ return nullptr;
}