Module: wine Branch: master Commit: 8d105ac7c27428fe9f599711c7061e369f515d5e URL: https://source.winehq.org/git/wine.git/?a=commit;h=8d105ac7c27428fe9f599711c...
Author: Piotr Caban piotr@codeweavers.com Date: Fri Feb 2 16:36:22 2018 +0100
msvcr100: Add _NonReentrantPPLLock class implementation.
Signed-off-by: Piotr Caban piotr@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/msvcrt/lock.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/dlls/msvcrt/lock.c b/dlls/msvcrt/lock.c index 6bcd66a..03b9aee 100644 --- a/dlls/msvcrt/lock.c +++ b/dlls/msvcrt/lock.c @@ -549,7 +549,9 @@ typedef struct DEFINE_THISCALL_WRAPPER(_NonReentrantPPLLock_ctor, 4) _NonReentrantPPLLock* __thiscall _NonReentrantPPLLock_ctor(_NonReentrantPPLLock *this) { - FIXME("(%p) stub\n", this); + TRACE("(%p)\n", this); + + critical_section_ctor(&this->cs); return this; }
@@ -558,7 +560,8 @@ _NonReentrantPPLLock* __thiscall _NonReentrantPPLLock_ctor(_NonReentrantPPLLock DEFINE_THISCALL_WRAPPER(_NonReentrantPPLLock__Acquire, 8) void __thiscall _NonReentrantPPLLock__Acquire(_NonReentrantPPLLock *this, cs_queue *q) { - FIXME("(%p %p) stub\n", this, q); + TRACE("(%p %p)\n", this, q); + cs_lock(&this->cs, q); }
/* ?_Release@_NonReentrantPPLLock@details@Concurrency@@QAEXXZ */ @@ -566,7 +569,8 @@ void __thiscall _NonReentrantPPLLock__Acquire(_NonReentrantPPLLock *this, cs_que DEFINE_THISCALL_WRAPPER(_NonReentrantPPLLock__Release, 4) void __thiscall _NonReentrantPPLLock__Release(_NonReentrantPPLLock *this) { - FIXME("(%p) stub\n", this); + TRACE("(%p)\n", this); + critical_section_unlock(&this->cs); }
/* ?_GetConcurrency@details@Concurrency@@YAIXZ */