commit e35c8a2fd6bb0eb16b45e76a39f4602f1161f357 (tree)
parent a23ef3783bb5357376acdce12f73b0285636d6cf
Author: Jakub Konka <kubkon@jakubkonka.com>
Date: Thu, 16 Mar 2023 18:09:23 +0100
link: use std.os.ptrace wrapper on linux
Diffstat:
1 file changed, 4 insertions(+), 10 deletions(-)
diff --git a/src/link.zig b/src/link.zig
@@ -389,11 +389,8 @@ pub const File = struct {
try emit.directory.handle.copyFile(emit.sub_path, emit.directory.handle, tmp_sub_path, .{});
try emit.directory.handle.rename(tmp_sub_path, emit.sub_path);
switch (builtin.os.tag) {
- .linux => {
- switch (std.os.errno(std.os.linux.ptrace(std.os.linux.PTRACE.ATTACH, pid, 0, 0, 0))) {
- .SUCCESS => {},
- else => |errno| log.warn("ptrace failure: {s}", .{@tagName(errno)}),
- }
+ .linux => std.os.ptrace(std.os.linux.PTRACE.ATTACH, pid, 0, 0) catch |err| {
+ log.warn("ptrace failure: {s}", .{@errorName(err)});
},
else => return error.HotSwapUnavailableOnHostOperatingSystem,
}
@@ -430,11 +427,8 @@ pub const File = struct {
if (base.child_pid) |pid| {
switch (builtin.os.tag) {
- .linux => {
- switch (std.os.errno(std.os.linux.ptrace(std.os.linux.PTRACE.DETACH, pid, 0, 0, 0))) {
- .SUCCESS => {},
- else => |errno| log.warn("ptrace failure: {s}", .{@tagName(errno)}),
- }
+ .linux => std.os.ptrace(std.os.linux.PTRACE.DETACH, pid, 0, 0) catch |err| {
+ log.warn("ptrace failure: {s}", .{@errorName(err)});
},
else => return error.HotSwapUnavailableOnHostOperatingSystem,
}