diff options
| author | gingerBill <gingerBill@users.noreply.github.com> | 2024-01-17 16:46:39 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-17 16:46:39 +0000 |
| commit | c5bab58180dd7bf7aaa882d52f4f4f91e055f155 (patch) | |
| tree | eab3be098a4457252eaa412c4d1870ceaa075be0 | |
| parent | 5ad88ea1699bed640b97e15f4525cb68dd80248e (diff) | |
| parent | c6c710465a087473c5856f1f298ebea12d4d516a (diff) | |
Merge pull request #3076 from xb-bx/mprotect-fix-for-linux-and-darwin
virtual.protect returns inverted result on linux and darwin platforms
| -rw-r--r-- | core/mem/virtual/virtual_darwin.odin | 2 | ||||
| -rw-r--r-- | core/mem/virtual/virtual_linux.odin | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/core/mem/virtual/virtual_darwin.odin b/core/mem/virtual/virtual_darwin.odin index 5505149b0..bd1336cba 100644 --- a/core/mem/virtual/virtual_darwin.odin +++ b/core/mem/virtual/virtual_darwin.odin @@ -136,7 +136,7 @@ _protect :: proc "contextless" (data: rawptr, size: uint, flags: Protect_Flags) if .Write in flags { pflags |= PROT_WRITE } if .Execute in flags { pflags |= PROT_EXEC } err := _mprotect(data, size, pflags) - return err != 0 + return err == 0 } diff --git a/core/mem/virtual/virtual_linux.odin b/core/mem/virtual/virtual_linux.odin index 7ffc7643e..b927f2877 100644 --- a/core/mem/virtual/virtual_linux.odin +++ b/core/mem/virtual/virtual_linux.odin @@ -40,7 +40,7 @@ _protect :: proc "contextless" (data: rawptr, size: uint, flags: Protect_Flags) if .Write in flags { pflags |= {.WRITE} } if .Execute in flags { pflags |= {.EXEC} } errno := linux.mprotect(data, size, pflags) - return errno != .NONE + return errno == .NONE } _platform_memory_init :: proc() { |