diff --git a/platform.d b/platform.d index 251cdd2..897eb9d 100644 --- a/platform.d +++ b/platform.d @@ -375,9 +375,13 @@ SysThread CreateThread(void* proc, void* param) { SysThread thread; - assert(!PThreadMutexInit(&thread.mut, null)); - assert(!PThreadCondInit(&thread.cond, null)); - assert(!PThreadCreate(&thread.handle, null, cast(PThreadProc)proc, param)); + bool result; + + result = cast(bool)(!PThreadMutexInit(&thread.mut, null)); + result &= cast(bool)(!PThreadCondInit(&thread.cond, null)); + result &= cast(bool)(!PThreadCreate(&thread.handle, null, cast(PThreadProc)proc, param)); + assert(result); + return thread; } @@ -1064,7 +1068,8 @@ MemAlloc(u64 size) void MemFree(void* ptr, u64 size) { - assert(munmap(ptr, size) == 0, "MemFree failure"); + auto result = munmap(ptr, size); + assert(result == 0, "MemFree failure"); } struct Watcher