mirror of
https://github.com/ziglang/zig.git
synced 2026-01-20 22:35:24 +00:00
openbsd: fix thread name buffer size
OpenBSD 7.3 changed its implementation of pthread_get_name_np/pthread_set_name_np to wrap new libc functions getthrname/setthrname and lowered the max buffer size from 32 to 24. This is not a backwards-compatible change because if we were to put in comptime version logic to use size 32 when target < 7.3 the binaries would be undefined when running on >= 7.3. It also could simply be that OpenBSD has a policy to not support older binaries running on newer releases? Regardless, the safest course is to simply use the smallest known buffer size. As an aside, this bug manifested as a "hung" std.Thread test because 7.3 pthread API never checks for error result when wrapping getthrname/setthrname. This is not a problem in std.Thread when we use the correct max buffer size because ERANGE/EINVAL become unreachable.
This commit is contained in:
parent
ccf670c2b0
commit
490a411fd4
@ -40,7 +40,7 @@ pub const max_name_len = switch (target.os.tag) {
|
||||
.macos, .ios, .watchos, .tvos => 63,
|
||||
.netbsd => 31,
|
||||
.freebsd => 15,
|
||||
.openbsd => 31,
|
||||
.openbsd => 23,
|
||||
.dragonfly => 1023,
|
||||
.solaris => 31,
|
||||
else => 0,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user