summaryrefslogtreecommitdiffhomepage
path: root/Private/Source
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-17 09:54:17 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-17 10:08:50 +0200
commitc0099ab36bf9606c5503ceb0fa0d5b64f71c7203 (patch)
tree1c310521280e3c995981a903895c7c2e124582ee /Private/Source
parentf93fb4439aaa865d998a790348313a4c7163bb8b (diff)
Unrelated: These changes are important but related to nothing.
- Window now becomes Wm, as in Window manager. - Fix entrypoint for FragLib. - Remove CoreEvents to be replaced with Event Server, reworked Display Server. Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'Private/Source')
-rw-r--r--Private/Source/PEFCodeManager.cxx18
1 files changed, 8 insertions, 10 deletions
diff --git a/Private/Source/PEFCodeManager.cxx b/Private/Source/PEFCodeManager.cxx
index ed6b7bbc..f8616a8c 100644
--- a/Private/Source/PEFCodeManager.cxx
+++ b/Private/Source/PEFCodeManager.cxx
@@ -24,6 +24,8 @@ UInt32 rt_get_pef_platform(void) noexcept {
return kPefArch64x0;
#elif defined(__x86_64__)
return kPefArchAMD64;
+#elif defined(__powerpc64__)
+ return kPefArchPowerPC;
#else
return kPefArchInvalid;
#endif // __32x0__ || __64x0__ || __x86_64__
@@ -53,15 +55,6 @@ PEFLoader::PEFLoader(const char *path) : fCachedBlob(nullptr), fBad(false) {
PEFContainer *container = reinterpret_cast<PEFContainer *>(fCachedBlob);
- auto fFree = [&]() -> void {
- kcout << "CodeManager: Warning: Executable format error!\n";
- fBad = true;
-
- ke_delete_ke_heap(fCachedBlob);
-
- fCachedBlob = nullptr;
- };
-
if (container->Cpu == Detail::rt_get_pef_platform() &&
container->Magic[0] == kPefMagic[0] &&
container->Magic[1] == kPefMagic[1] &&
@@ -74,7 +67,12 @@ PEFLoader::PEFLoader(const char *path) : fCachedBlob(nullptr), fBad(false) {
}
}
- fFree();
+ kcout << "CodeManager: Warning: Executable format error!\n";
+ fBad = true;
+
+ ke_delete_ke_heap(fCachedBlob);
+
+ fCachedBlob = nullptr;
}
}