| ... | @@ -3401,16 +3401,15 @@ pub const PAGE = packed struct(ULONG) { | ... | @@ -3401,16 +3401,15 @@ pub const PAGE = packed struct(ULONG) { |
| 3401 | REVERT_TO_FILE_MAP: bool = false, | 3401 | REVERT_TO_FILE_MAP: bool = false, |
| 3402 | | 3402 | |
| 3403 | pub fn fromProtection(protection: std.process.MemoryProtection) ?PAGE { | 3403 | pub fn fromProtection(protection: std.process.MemoryProtection) ?PAGE { |
| 3404 | // TODO https://github.com/ziglang/zig/issues/22214 | 3404 | return switch (protection) { |
| 3405 | return switch (@as(u3, @bitCast(protection))) { | 3405 | .{} => .{ .NOACCESS = true }, |
| 3406 | 0b000 => .{ .NOACCESS = true }, | 3406 | .{ .read = true } => .{ .READONLY = true }, |
| 3407 | 0b001 => .{ .READONLY = true }, | 3407 | .{ .write = true } => null, |
| 3408 | 0b010 => null, | 3408 | .{ .read = true, .write = true } => .{ .READWRITE = true }, |
| 3409 | 0b011 => .{ .READWRITE = true }, | 3409 | .{ .execute = true } => .{ .EXECUTE = true }, |
| 3410 | 0b100 => .{ .EXECUTE = true }, | 3410 | .{ .read = true, .execute = true } => .{ .EXECUTE_READ = true }, |
| 3411 | 0b101 => .{ .EXECUTE_READ = true }, | 3411 | .{ .write = true, .execute = true } => null, |
| 3412 | 0b110 => null, | 3412 | .{ .read = true, .write = true, .execute = true } => .{ .EXECUTE_READWRITE = true }, |
| 3413 | 0b111 => .{ .EXECUTE_READWRITE = true }, | | |
| 3414 | }; | 3413 | }; |
| 3415 | } | 3414 | } |
| 3416 | }; | 3415 | }; |