Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-winehq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-winehq
Commits
3b67ad9b
Commit
3b67ad9b
authored
Jan 18, 2010
by
Alexandre Julliard
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
ntdll: Fix the NtCreateEvent prototype.
It takes an event type, not a manual reset flag.
parent
6299544c
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
15 additions
and
18 deletions
+15
-18
console.c
dlls/kernel32/console.c
+1
-1
except.c
dlls/kernel32/except.c
+1
-1
sync.c
dlls/kernel32/sync.c
+2
-1
task.c
dlls/krnl386.exe16/task.c
+1
-1
reg.c
dlls/ntdll/reg.c
+1
-1
serial.c
dlls/ntdll/serial.c
+1
-1
sync.c
dlls/ntdll/sync.c
+3
-7
threadpool.c
dlls/ntdll/threadpool.c
+4
-4
winternl.h
include/winternl.h
+1
-1
No files found.
dlls/kernel32/console.c
View file @
3b67ad9b
...
...
@@ -1195,7 +1195,7 @@ static BOOL start_console_renderer(STARTUPINFOA* si)
attr
.
SecurityDescriptor
=
NULL
;
attr
.
SecurityQualityOfService
=
NULL
;
NtCreateEvent
(
&
hEvent
,
EVENT_ALL_ACCESS
,
&
attr
,
TRUE
,
FALSE
);
NtCreateEvent
(
&
hEvent
,
EVENT_ALL_ACCESS
,
&
attr
,
NotificationEvent
,
FALSE
);
if
(
!
hEvent
)
return
FALSE
;
/* first try environment variable */
...
...
dlls/kernel32/except.c
View file @
3b67ad9b
...
...
@@ -366,7 +366,7 @@ static int start_debugger_atomic(PEXCEPTION_POINTERS epointers)
/* ask for manual reset, so that once the debugger is started,
* every thread will know it */
NtCreateEvent
(
&
hEvent
,
EVENT_ALL_ACCESS
,
&
attr
,
TRUE
,
FALSE
);
NtCreateEvent
(
&
hEvent
,
EVENT_ALL_ACCESS
,
&
attr
,
NotificationEvent
,
FALSE
);
if
(
InterlockedCompareExchangePointer
(
&
hRunOnce
,
hEvent
,
0
)
==
0
)
{
/* ok, our event has been set... we're the winning thread */
...
...
dlls/kernel32/sync.c
View file @
3b67ad9b
...
...
@@ -489,7 +489,8 @@ HANDLE WINAPI CreateEventExW( SECURITY_ATTRIBUTES *sa, LPCWSTR name, DWORD flags
attr
.
RootDirectory
=
get_BaseNamedObjects_handle
();
}
status
=
NtCreateEvent
(
&
ret
,
access
,
&
attr
,
(
flags
&
CREATE_EVENT_MANUAL_RESET
)
!=
0
,
status
=
NtCreateEvent
(
&
ret
,
access
,
&
attr
,
(
flags
&
CREATE_EVENT_MANUAL_RESET
)
?
NotificationEvent
:
SynchronizationEvent
,
(
flags
&
CREATE_EVENT_INITIAL_SET
)
!=
0
);
if
(
status
==
STATUS_OBJECT_NAME_EXISTS
)
SetLastError
(
ERROR_ALREADY_EXISTS
);
...
...
dlls/krnl386.exe16/task.c
View file @
3b67ad9b
...
...
@@ -350,7 +350,7 @@ static TDB *TASK_Create( NE_MODULE *pModule, UINT16 cmdShow, LPCSTR cmdline, BYT
/* Create scheduler event for 16-bit tasks */
if
(
!
(
pTask
->
flags
&
TDBF_WIN32
)
)
NtCreateEvent
(
&
pTask
->
hEvent
,
EVENT_ALL_ACCESS
,
NULL
,
TRUE
,
FALSE
);
NtCreateEvent
(
&
pTask
->
hEvent
,
EVENT_ALL_ACCESS
,
NULL
,
NotificationEvent
,
FALSE
);
if
(
!
initial_task
)
initial_task
=
hTask
;
...
...
dlls/ntdll/reg.c
View file @
3b67ad9b
...
...
@@ -651,7 +651,7 @@ NTSTATUS WINAPI NtNotifyChangeKey(
{
OBJECT_ATTRIBUTES
attr
;
InitializeObjectAttributes
(
&
attr
,
NULL
,
0
,
NULL
,
NULL
);
ret
=
NtCreateEvent
(
&
Event
,
EVENT_ALL_ACCESS
,
&
attr
,
FALSE
,
FALSE
);
ret
=
NtCreateEvent
(
&
Event
,
EVENT_ALL_ACCESS
,
&
attr
,
SynchronizationEvent
,
FALSE
);
if
(
ret
!=
STATUS_SUCCESS
)
return
ret
;
}
...
...
dlls/ntdll/serial.c
View file @
3b67ad9b
...
...
@@ -1363,7 +1363,7 @@ NTSTATUS COMM_DeviceIoControl(HANDLE hDevice,
attr
.
Attributes
=
OBJ_CASE_INSENSITIVE
|
OBJ_OPENIF
;
attr
.
SecurityDescriptor
=
NULL
;
attr
.
SecurityQualityOfService
=
NULL
;
status
=
NtCreateEvent
(
&
hev
,
EVENT_ALL_ACCESS
,
&
attr
,
FALSE
,
FALSE
);
status
=
NtCreateEvent
(
&
hev
,
EVENT_ALL_ACCESS
,
&
attr
,
SynchronizationEvent
,
FALSE
);
if
(
status
)
goto
done
;
}
...
...
dlls/ntdll/sync.c
View file @
3b67ad9b
...
...
@@ -247,12 +247,8 @@ NTSTATUS WINAPI NtReleaseSemaphore( HANDLE handle, ULONG count, PULONG previous
* NtCreateEvent (NTDLL.@)
* ZwCreateEvent (NTDLL.@)
*/
NTSTATUS
WINAPI
NtCreateEvent
(
OUT
PHANDLE
EventHandle
,
IN
ACCESS_MASK
DesiredAccess
,
IN
const
OBJECT_ATTRIBUTES
*
attr
,
IN
BOOLEAN
ManualReset
,
IN
BOOLEAN
InitialState
)
NTSTATUS
WINAPI
NtCreateEvent
(
PHANDLE
EventHandle
,
ACCESS_MASK
DesiredAccess
,
const
OBJECT_ATTRIBUTES
*
attr
,
EVENT_TYPE
type
,
BOOLEAN
InitialState
)
{
DWORD
len
=
attr
&&
attr
->
ObjectName
?
attr
->
ObjectName
->
Length
:
0
;
NTSTATUS
ret
;
...
...
@@ -274,7 +270,7 @@ NTSTATUS WINAPI NtCreateEvent(
{
req
->
access
=
DesiredAccess
;
req
->
attributes
=
(
attr
)
?
attr
->
Attributes
:
0
;
req
->
manual_reset
=
ManualReset
;
req
->
manual_reset
=
(
type
==
NotificationEvent
)
;
req
->
initial_state
=
InitialState
;
wine_server_add_data
(
req
,
&
objattr
,
sizeof
(
objattr
)
);
if
(
objattr
.
sd_len
)
wine_server_add_data
(
req
,
sd
,
objattr
.
sd_len
);
...
...
dlls/ntdll/threadpool.c
View file @
3b67ad9b
...
...
@@ -440,7 +440,7 @@ NTSTATUS WINAPI RtlRegisterWait(PHANDLE NewWaitObject, HANDLE Object,
wait_work_item
->
DeleteCount
=
0
;
wait_work_item
->
CompletionEvent
=
NULL
;
status
=
NtCreateEvent
(
&
wait_work_item
->
CancelEvent
,
EVENT_ALL_ACCESS
,
NULL
,
TRUE
,
FALSE
);
status
=
NtCreateEvent
(
&
wait_work_item
->
CancelEvent
,
EVENT_ALL_ACCESS
,
NULL
,
NotificationEvent
,
FALSE
);
if
(
status
!=
STATUS_SUCCESS
)
{
RtlFreeHeap
(
GetProcessHeap
(),
0
,
wait_work_item
);
...
...
@@ -485,7 +485,7 @@ NTSTATUS WINAPI RtlDeregisterWaitEx(HANDLE WaitHandle, HANDLE CompletionEvent)
{
if
(
CompletionEvent
==
INVALID_HANDLE_VALUE
)
{
status
=
NtCreateEvent
(
&
CompletionEvent
,
EVENT_ALL_ACCESS
,
NULL
,
TRUE
,
FALSE
);
status
=
NtCreateEvent
(
&
CompletionEvent
,
EVENT_ALL_ACCESS
,
NULL
,
NotificationEvent
,
FALSE
);
if
(
status
!=
STATUS_SUCCESS
)
return
status
;
interlocked_xchg_ptr
(
&
wait_work_item
->
CompletionEvent
,
CompletionEvent
);
...
...
@@ -778,7 +778,7 @@ NTSTATUS WINAPI RtlCreateTimerQueue(PHANDLE NewTimerQueue)
RtlInitializeCriticalSection
(
&
q
->
cs
);
list_init
(
&
q
->
timers
);
q
->
quit
=
FALSE
;
status
=
NtCreateEvent
(
&
q
->
event
,
EVENT_ALL_ACCESS
,
NULL
,
FALSE
,
FALSE
);
status
=
NtCreateEvent
(
&
q
->
event
,
EVENT_ALL_ACCESS
,
NULL
,
SynchronizationEvent
,
FALSE
);
if
(
status
!=
STATUS_SUCCESS
)
{
RtlFreeHeap
(
GetProcessHeap
(),
0
,
q
);
...
...
@@ -1013,7 +1013,7 @@ NTSTATUS WINAPI RtlDeleteTimer(HANDLE TimerQueue, HANDLE Timer,
return
STATUS_INVALID_PARAMETER_1
;
q
=
t
->
q
;
if
(
CompletionEvent
==
INVALID_HANDLE_VALUE
)
status
=
NtCreateEvent
(
&
event
,
EVENT_ALL_ACCESS
,
NULL
,
FALSE
,
FALSE
);
status
=
NtCreateEvent
(
&
event
,
EVENT_ALL_ACCESS
,
NULL
,
SynchronizationEvent
,
FALSE
);
else
if
(
CompletionEvent
)
event
=
CompletionEvent
;
...
...
include/winternl.h
View file @
3b67ad9b
...
...
@@ -1902,7 +1902,7 @@ NTSYSAPI NTSTATUS WINAPI NtCompleteConnectPort(HANDLE);
NTSYSAPI
NTSTATUS
WINAPI
NtConnectPort
(
PHANDLE
,
PUNICODE_STRING
,
PSECURITY_QUALITY_OF_SERVICE
,
PLPC_SECTION_WRITE
,
PLPC_SECTION_READ
,
PULONG
,
PVOID
,
PULONG
);
NTSYSAPI
NTSTATUS
WINAPI
NtContinue
(
PCONTEXT
,
BOOLEAN
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateDirectoryObject
(
PHANDLE
,
ACCESS_MASK
,
POBJECT_ATTRIBUTES
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateEvent
(
PHANDLE
,
ACCESS_MASK
,
const
OBJECT_ATTRIBUTES
*
,
BOOLEAN
,
BOOLEAN
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateEvent
(
PHANDLE
,
ACCESS_MASK
,
const
OBJECT_ATTRIBUTES
*
,
EVENT_TYPE
,
BOOLEAN
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateEventPair
(
PHANDLE
,
ACCESS_MASK
,
POBJECT_ATTRIBUTES
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateFile
(
PHANDLE
,
ACCESS_MASK
,
POBJECT_ATTRIBUTES
,
PIO_STATUS_BLOCK
,
PLARGE_INTEGER
,
ULONG
,
ULONG
,
ULONG
,
ULONG
,
PVOID
,
ULONG
);
NTSYSAPI
NTSTATUS
WINAPI
NtCreateIoCompletion
(
PHANDLE
,
ACCESS_MASK
,
POBJECT_ATTRIBUTES
,
ULONG
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment