summaryrefslogtreecommitdiffhomepage
path: root/Private/Source/PEFSharedObjectRT.cxx
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/Source/PEFSharedObjectRT.cxx
parent5a903c1d8f80ca8d7bc5fbea0aea710ce0133f9d (diff)
MHR-23: Add run_format.sh, kernel patches.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/Source/PEFSharedObjectRT.cxx')
-rw-r--r--Private/Source/PEFSharedObjectRT.cxx77
1 files changed, 42 insertions, 35 deletions
diff --git a/Private/Source/PEFSharedObjectRT.cxx b/Private/Source/PEFSharedObjectRT.cxx
index 7dadbe1d..da12eb05 100644
--- a/Private/Source/PEFSharedObjectRT.cxx
+++ b/Private/Source/PEFSharedObjectRT.cxx
@@ -35,36 +35,40 @@ using namespace NewOS;
/* @brief Library runtime initializer. */
/***********************************************************************************/
-EXTERN_C SharedObjectPtr rt_library_init(void) {
- SharedObjectPtr library = tls_new_class<SharedObject>();
+EXTERN_C SharedObjectPtr rt_library_init(void)
+{
+ SharedObjectPtr library = tls_new_class<SharedObject>();
- if (!library) {
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ if (!library)
+ {
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
- return nullptr;
- }
+ return nullptr;
+ }
- library->Mount(tls_new_class<SharedObject::SharedObjectTrait>());
+ library->Mount(tls_new_class<SharedObject::SharedObjectTrait>());
- if (!library->Get()) {
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ if (!library->Get())
+ {
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
- return nullptr;
- }
+ return nullptr;
+ }
- library->Get()->fImageObject =
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Image;
+ library->Get()->fImageObject =
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Image;
- if (!library->Get()->fImageObject) {
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ if (!library->Get()->fImageObject)
+ {
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
- return nullptr;
- }
+ return nullptr;
+ }
- library->Get()->fImageEntrypointOffset =
- library->Load<VoidPtr>(kPefStart, rt_string_len(kPefStart, 0), kPefCode);
+ library->Get()->fImageEntrypointOffset =
+ library->Load<VoidPtr>(kPefStart, rt_string_len(kPefStart, 0), kPefCode);
- return library;
+ return library;
}
/***********************************************************************************/
@@ -73,28 +77,31 @@ EXTERN_C SharedObjectPtr rt_library_init(void) {
/* @param SharedObjectPtr the library to free. */
/***********************************************************************************/
-EXTERN_C Void rt_library_free(SharedObjectPtr lib, bool *successful) {
- MUST_PASS(successful);
+EXTERN_C Void rt_library_free(SharedObjectPtr lib, bool* successful)
+{
+ MUST_PASS(successful);
- // sanity check (will also trigger a bug check if this fails)
- if (lib == nullptr) {
- *successful = false;
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
- }
+ // sanity check (will also trigger a bug check if this fails)
+ if (lib == nullptr)
+ {
+ *successful = false;
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ }
- delete lib->Get();
- delete lib;
+ delete lib->Get();
+ delete lib;
- lib = nullptr;
+ lib = nullptr;
- *successful = true;
+ *successful = true;
}
/***********************************************************************************/
/// @brief Unimplemented function (crashes by default)
-/// @param
-EXTERN_C void __mh_purecall(void) {
- ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
- return;
+/// @param
+EXTERN_C void __mh_purecall(void)
+{
+ ProcessScheduler::Shared().Leak().GetCurrent().Leak().Crash();
+ return;
}