summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-30 13:17:43 +0200
committerAmlal El Mahrouss <amlal.elmahrouss@icloud.com>2024-04-30 13:17:43 +0200
commitbe05ca66877eeb46a85c2400b03f1e487c1bf13c (patch)
tree9928855a6d65d59725e528b8cbe89604f391f6c9
parent3033b78abc6ff3dad05994fa51bcd92bf3dae542 (diff)
kernel: patches.
Signed-off-by: Amlal El Mahrouss <amlal.elmahrouss@icloud.com>
-rw-r--r--Private/Source/AppMain.cxx10
-rw-r--r--Private/Source/ProcessScheduler.cxx2
2 files changed, 7 insertions, 5 deletions
diff --git a/Private/Source/AppMain.cxx b/Private/Source/AppMain.cxx
index ac1cb1ac..dccb06d0 100644
--- a/Private/Source/AppMain.cxx
+++ b/Private/Source/AppMain.cxx
@@ -36,9 +36,9 @@ EXTERN_C NewOS::Void AppMain(NewOS::Void) {
NewFork theFork{0};
- NewOS::rt_copy_memory((NewOS::VoidPtr) "RawExecutable",
+ NewOS::rt_copy_memory((NewOS::VoidPtr) "/System/.NEWFS_SANITIZER$RawExecutable",
(NewOS::VoidPtr)theFork.Name,
- NewOS::rt_string_len("RawExecutable"));
+ NewOS::rt_string_len("/System/.NEWFS_SANITIZER$RawExecutable"));
theFork.Kind = NewOS::kNewFSDataForkKind;
theFork.DataSize = kNewFSForkSize;
@@ -47,12 +47,14 @@ EXTERN_C NewOS::Void AppMain(NewOS::Void) {
textCatalog = newFS->GetImpl()->CreateCatalog("/System/.NEWFS_SANITIZER");
newFS->GetImpl()->CreateFork(textCatalog, theFork);
- newFS->GetImpl()->WriteCatalog(textCatalog, theData, cDataSz, "RawExecutable");
+ newFS->GetImpl()->WriteCatalog(textCatalog, theData, cDataSz, "/System/.NEWFS_SANITIZER$RawExecutable");
}
NewOS::UInt8* buf = nullptr;
- buf = (NewOS::UInt8*)newFS->GetImpl()->ReadCatalog(newFS->GetImpl()->GetCatalog("/System/.NEWFS_SANITIZER"), 512, "RawExecutable");
+ buf = (NewOS::UInt8*)newFS->GetImpl()->ReadCatalog(
+ newFS->GetImpl()->GetCatalog("/System/.NEWFS_SANITIZER"),
+ 512, "/System/.NEWFS_SANITIZER$RawExecutable");
for (NewOS::SizeT index = 0UL; index < cDataSz; ++index) {
if (buf[index] != theData[index]) {
diff --git a/Private/Source/ProcessScheduler.cxx b/Private/Source/ProcessScheduler.cxx
index f2d12e64..a21e7dd4 100644
--- a/Private/Source/ProcessScheduler.cxx
+++ b/Private/Source/ProcessScheduler.cxx
@@ -174,7 +174,7 @@ SizeT ProcessScheduler::Add(Ref<ProcessHeader> &process) {
if (process.Leak().Kind == ProcessHeader::kUserKind)
process.Leak().HeapPtr = rt_new_heap(kUserHeapUser | kUserHeapRw);
else if (process.Leak().Kind == ProcessHeader::kLibKind)
- process.Leak().HeapPtr = rt_new_heap(kUserHeapUser | kUserHeapRw || kUserHeapShared);
+ process.Leak().HeapPtr = rt_new_heap(kUserHeapUser | kUserHeapRw | kUserHeapShared);
else
process.Leak().HeapPtr = rt_new_heap(kUserHeapDriver | kUserHeapRw);