summaryrefslogtreecommitdiffhomepage
path: root/dev/ZKAKit/src/PEFCodeMgr.cc
diff options
context:
space:
mode:
authorAmlal <amlal.elmahrouss@icloud.com>2024-10-29 07:11:56 +0100
committerAmlal <amlal.elmahrouss@icloud.com>2024-10-29 07:11:56 +0100
commitc08af30448618c5d1950dc1fa0fb1685782e7b22 (patch)
treebc12b43a94fe4d4ff60b0f7c17100a179d95d0dc /dev/ZKAKit/src/PEFCodeMgr.cc
parent0511c53e648e5f253cd9e83c9e211aa6600db377 (diff)
FIX: Fix scheduler crash (1/2)
- UserProcessScheduler has been improved and cleaned up. - Same goes for the HardwareThreadScheduler Signed-off-by: Amlal <amlal.elmahrouss@icloud.com>
Diffstat (limited to 'dev/ZKAKit/src/PEFCodeMgr.cc')
-rw-r--r--dev/ZKAKit/src/PEFCodeMgr.cc58
1 files changed, 29 insertions, 29 deletions
diff --git a/dev/ZKAKit/src/PEFCodeMgr.cc b/dev/ZKAKit/src/PEFCodeMgr.cc
index 45a5e46c..8c18dfe3 100644
--- a/dev/ZKAKit/src/PEFCodeMgr.cc
+++ b/dev/ZKAKit/src/PEFCodeMgr.cc
@@ -199,16 +199,43 @@ namespace Kernel
return !fBad && fCachedBlob;
}
+ const Char* PEFLoader::Path()
+ {
+ return fPath.Leak().CData();
+ }
+
+ const Char* PEFLoader::AsString()
+ {
+#ifdef __32x0__
+ return "32x0 PEF executable.";
+#elif defined(__64x0__)
+ return "64x0 PEF executable.";
+#elif defined(__x86_64__)
+ return "x86_64 PEF executable.";
+#elif defined(__aarch64__)
+ return "aarch64 PEF executable.";
+#elif defined(__powerpc64__)
+ return "POWER64 PEF executable.";
+#else
+ return "???? PEF executable.";
+#endif // __32x0__ || __64x0__ || __x86_64__ || __powerpc64__
+ }
+
+ const Char* PEFLoader::MIME()
+ {
+ return kPefApplicationMime;
+ }
+
namespace Utils
{
- SizeT execute_from_image(PEFLoader& exec, const Int32& procKind) noexcept
+ ProcessID execute_from_image(PEFLoader& exec, const Int32& procKind) noexcept
{
auto errOrStart = exec.FindStart();
if (errOrStart.Error() != kErrorSuccess)
return No;
- UserProcess proc;
+ UserProcess proc{};
proc.Image = errOrStart.Leak().Leak();
proc.Kind = procKind;
@@ -229,31 +256,4 @@ namespace Kernel
return UserProcessScheduler::The().Add(proc);
}
} // namespace Utils
-
- const Char* PEFLoader::Path()
- {
- return fPath.Leak().CData();
- }
-
- const Char* PEFLoader::AsString()
- {
-#ifdef __32x0__
- return "32x0 PEF executable.";
-#elif defined(__64x0__)
- return "64x0 PEF executable.";
-#elif defined(__x86_64__)
- return "x86_64 PEF executable.";
-#elif defined(__aarch64__)
- return "aarch64 PEF executable.";
-#elif defined(__powerpc64__)
- return "POWER64 PEF executable.";
-#else
- return "???? PEF executable.";
-#endif // __32x0__ || __64x0__ || __x86_64__ || __powerpc64__
- }
-
- const Char* PEFLoader::MIME()
- {
- return kPefApplicationMime;
- }
} // namespace Kernel