6 Feb
2025
6 Feb
'25
12:19 p.m.
Rémi Bernon (@rbernon) commented about dlls/ntdll/unix/sync.c:
+static NTSTATUS linux_release_mutex_obj( int obj, LONG *prev_count ) +{ + struct ntsync_mutex_args args = {0}; + NTSTATUS ret; + + args.owner = GetCurrentThreadId(); + ret = ioctl( obj, NTSYNC_IOC_MUTEX_UNLOCK, &args ); + + if (ret < 0) + { + if (errno == EOVERFLOW) + return STATUS_MUTANT_LIMIT_EXCEEDED; + else if (errno == EPERM) + return STATUS_MUTANT_NOT_OWNED; + else + return errno_to_status( errno );
if (errno == EOVERFLOW) return STATUS_MUTANT_LIMIT_EXCEEDED;
if (errno == EPERM) return STATUS_MUTANT_NOT_OWNED;
return errno_to_status( errno );
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7226#note_93879