xigncode3 seems to use it
-- v7: ntoskrnl.exe: Fix formatting in IoCreateSyncronizationEvent. ntoskrnl.exe: Implement IoCreateNotificationEvent.
From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
--- dlls/ntoskrnl.exe/ntoskrnl.c | 10 ---------- dlls/ntoskrnl.exe/sync.c | 26 ++++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 10 deletions(-)
diff --git a/dlls/ntoskrnl.exe/ntoskrnl.c b/dlls/ntoskrnl.exe/ntoskrnl.c index 6f5564042a6..2c080eaf9f6 100644 --- a/dlls/ntoskrnl.exe/ntoskrnl.c +++ b/dlls/ntoskrnl.exe/ntoskrnl.c @@ -4075,16 +4075,6 @@ NTSTATUS WINAPI IoCreateFile(HANDLE *handle, ACCESS_MASK access, OBJECT_ATTRIBUT create_options, ea_buffer, ea_length, file_type, parameters, options, NULL); }
-/*********************************************************************** - * IoCreateNotificationEvent (NTOSKRNL.EXE.@) - */ -PKEVENT WINAPI IoCreateNotificationEvent(UNICODE_STRING *name, HANDLE *handle) -{ - FIXME( "stub: %s %p\n", debugstr_us(name), handle ); - return NULL; -} - - /************************************************************************** * __chkstk (NTOSKRNL.@) */ diff --git a/dlls/ntoskrnl.exe/sync.c b/dlls/ntoskrnl.exe/sync.c index b8239b0cd7d..409d5752547 100644 --- a/dlls/ntoskrnl.exe/sync.c +++ b/dlls/ntoskrnl.exe/sync.c @@ -231,6 +231,32 @@ PKEVENT WINAPI IoCreateSynchronizationEvent( UNICODE_STRING *name, HANDLE *ret_h return event; }
+/*********************************************************************** + * IoCreateNotificationEvent (NTOSKRNL.EXE.@) + */ +PKEVENT WINAPI IoCreateNotificationEvent( UNICODE_STRING *name, HANDLE *ret_handle ) +{ + OBJECT_ATTRIBUTES attr; + HANDLE handle; + KEVENT *event; + NTSTATUS ret; + + TRACE( "(%s %p)\n", debugstr_us(name), ret_handle ); + + InitializeObjectAttributes( &attr, name, 0, 0, NULL ); + ret = NtCreateEvent( &handle, EVENT_ALL_ACCESS, &attr, NotificationEvent, TRUE ); + if (ret) return NULL; + + if (kernel_object_from_handle( handle, ExEventObjectType, (void**)&event )) + { + NtClose(handle); + return NULL; + } + + *ret_handle = handle; + return event; +} + /*********************************************************************** * KeSetEvent (NTOSKRNL.EXE.@) */
From: Etaash Mathamsetty etaash.mathamsetty@gmail.com
--- dlls/ntoskrnl.exe/sync.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dlls/ntoskrnl.exe/sync.c b/dlls/ntoskrnl.exe/sync.c index 409d5752547..eab79789f10 100644 --- a/dlls/ntoskrnl.exe/sync.c +++ b/dlls/ntoskrnl.exe/sync.c @@ -215,7 +215,7 @@ PKEVENT WINAPI IoCreateSynchronizationEvent( UNICODE_STRING *name, HANDLE *ret_h KEVENT *event; NTSTATUS ret;
- TRACE( "(%p %p)\n", name, ret_handle ); + TRACE( "(%s %p)\n", debugstr_us(name), ret_handle );
InitializeObjectAttributes( &attr, name, 0, 0, NULL ); ret = NtCreateEvent( &handle, EVENT_ALL_ACCESS, &attr, SynchronizationEvent, TRUE ); @@ -223,7 +223,7 @@ PKEVENT WINAPI IoCreateSynchronizationEvent( UNICODE_STRING *name, HANDLE *ret_h
if (kernel_object_from_handle( handle, ExEventObjectType, (void**)&event )) { - NtClose( handle); + NtClose(handle); return NULL; }
Hi,
It looks like your patch introduced the new failures shown below. Please investigate and fix them before resubmitting your patch. If they are not new, fixing them anyway would help a lot. Otherwise please ask for the known failures list to be updated.
The tests also ran into some preexisting test failures. If you know how to fix them that would be helpful. See the TestBot job for the details:
The full results can be found at: https://testbot.winehq.org/JobDetails.pl?Key=125168
Your paranoid android.
=== debian11 (32 bit report) ===
d3drm: d3drm.c:5363: Test failed: Expected hr == D3DRMERR_BADOBJECT, got hr 0x88760316. d3drm.c:5365: Test failed: expected ref3 > ref1, got ref1 = 1 , ref3 = 2. Unhandled exception: page fault on read access to 0x00000000 in 32-bit code (0x0041ae9c).
ddraw: ddraw7.c:15663: Test failed: Expected unsynchronised map for flags 0x1000. ddraw7.c:15663: Test failed: Expected unsynchronised map for flags 0x3000.
mmdevapi: render.c:1116: Test marked flaky: Position 54152 too far after playing 100ms
=== debian11 (build log) ===
0630:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0630:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0630:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this. 0764:err:winediag:d3d_device_create The application wants to create a Direct3D device, but the current DirectDrawRenderer does not support this.
=== debian11 (build log) ===
Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24931. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24931. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 24931. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 112. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 112. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 112.
=== debian11 (build log) ===
Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 113. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 113. Use of uninitialized value $Flaky in addition (+) at /home/testbot/lib/WineTestBot/LogUtils.pm line 720, <$LogFile> line 113.