diff options
-rw-r--r-- | src/lib/resources.zig | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/resources.zig b/src/lib/resources.zig index 5c19aa2..71cd73b 100644 --- a/src/lib/resources.zig +++ b/src/lib/resources.zig @@ -77,7 +77,10 @@ const processfs = struct { } fn doCreate(pid: u16, thread_id: usize, data: usize) !usize { - const path_c: [*:0]const u8 = @ptrFromInt(data); + paging.setUserMemoryAccess(true); + defer paging.setUserMemoryAccess(false); + + const path_c: [*:0]const u8 = @ptrFromInt(data); // fixme: Kernel panic if null pointer const allocator = mem.page_allocator; @@ -104,6 +107,8 @@ const processfs = struct { .proc = proc, }; + paging.setUserMemoryAccess(false); + defer proc.allowResume(); while (try rd.readHooked(proc, ctx.buffer.items, .{ .hookFn = loadExe, |