[9/9] ntoskrnl.exe: Add semi-stub implementation of Ke*Event functions.
Alexander Morozov
amorozov at etersoft.ru
Mon Oct 6 02:21:14 CDT 2008
-------------- next part --------------
From 9b83b9c005d0898f43539ab061ea104a09686419 Mon Sep 17 00:00:00 2001
From: Alexander Morozov <amorozov at etersoft.ru>
Date: Fri, 3 Oct 2008 20:18:09 +0400
Subject: [PATCH] ntoskrnl.exe: Add semi-stub implementation of Ke*Event functions.
---
dlls/ntoskrnl.exe/ntoskrnl.c | 21 +++++++++++++++++++--
1 files changed, 19 insertions(+), 2 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c
index 6a89784..35ac70f 100644
--- a/dlls/ntoskrnl.exe/ntoskrnl.c
+++ b/dlls/ntoskrnl.exe/ntoskrnl.c
@@ -874,6 +874,12 @@ void WINAPI KeInitializeEvent( PRKEVENT Event, EVENT_TYPE Type,
BOOLEAN State )
{
FIXME( "%p %u %u\n", Event, Type, State );
+ RtlZeroMemory( Event, sizeof(KEVENT) );
+ Event->Header.Type = Type;
+ Event->Header.Size = 4;
+ if (State)
+ Event->Header.SignalState = 1;
+ InitializeListHead( &Event->Header.WaitListHead );
}
@@ -883,6 +889,7 @@ void WINAPI KeInitializeEvent( PRKEVENT Event, EVENT_TYPE Type,
void WINAPI KeClearEvent( PRKEVENT Event )
{
FIXME( "%p\n", Event );
+ Event->Header.SignalState = 0;
}
@@ -891,8 +898,13 @@ void WINAPI KeClearEvent( PRKEVENT Event )
*/
LONG WINAPI KeResetEvent( PRKEVENT Event )
{
+ LONG ret;
+
FIXME( "%p\n", Event );
- return 0;
+
+ ret = Event->Header.SignalState;
+ Event->Header.SignalState = 0;
+ return ret;
}
@@ -902,8 +914,13 @@ LONG WINAPI KeResetEvent( PRKEVENT Event )
LONG WINAPI KeSetEvent( PRKEVENT Event, KPRIORITY Increment,
BOOLEAN Wait )
{
+ LONG ret;
+
FIXME( "%p %d %d\n", Event, Increment, Wait );
- return 0;
+
+ ret = Event->Header.SignalState;
+ Event->Header.SignalState = 1;
+ return ret;
}
--
1.5.6.5.GIT
More information about the wine-patches
mailing list