Author: akhaldi
Date: Sun Nov 29 16:35:51 2015
New Revision: 70200
URL:
http://svn.reactos.org/svn/reactos?rev=70200&view=rev
Log:
[RTL] Partially sync wait.c with Wine Staging 1.7.55. By Samuel Serapión. CORE-10536
CORE-10577
Modified:
trunk/reactos/lib/rtl/wait.c
trunk/reactos/media/doc/README.WINE
Modified: trunk/reactos/lib/rtl/wait.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/wait.c?rev=70200&a…
==============================================================================
--- trunk/reactos/lib/rtl/wait.c [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/wait.c [iso-8859-1] Sun Nov 29 16:35:51 2015
@@ -44,7 +44,7 @@
{
PRTLP_WAIT Wait = (PRTLP_WAIT) Arg;
NTSTATUS Status;
- BOOLEAN alertable = (Wait->Flags & WT_EXECUTEINIOTHREAD) ? TRUE : FALSE;
+ BOOLEAN alertable = (Wait->Flags & WT_EXECUTEINIOTHREAD) != 0;
HANDLE handles[2] = { Wait->Object, Wait->CancelEvent };
LARGE_INTEGER timeout;
HANDLE completion_event;
@@ -84,7 +84,7 @@
if (Wait->Flags & WT_EXECUTEONLYONCE)
break;
}
- else
+ else if (Status != STATUS_USER_APC)
break;
}
@@ -157,7 +157,7 @@
Status = NtCreateEvent( &Wait->CancelEvent,
EVENT_ALL_ACCESS,
NULL,
- TRUE,
+ NotificationEvent,
FALSE );
if (Status != STATUS_SUCCESS)
@@ -166,9 +166,12 @@
return Status;
}
+ Flags = Flags & (WT_EXECUTEINIOTHREAD | WT_EXECUTEINPERSISTENTTHREAD |
+ WT_EXECUTELONGFUNCTION | WT_TRANSFER_IMPERSONATION);
+
Status = RtlQueueWorkItem( Wait_thread_proc,
Wait,
- Flags & ~WT_EXECUTEONLYONCE );
+ Flags );
if (Status != STATUS_SUCCESS)
{
@@ -214,7 +217,7 @@
Status = NtCreateEvent( &CompletionEvent,
EVENT_ALL_ACCESS,
NULL,
- TRUE,
+ NotificationEvent,
FALSE );
if (Status != STATUS_SUCCESS)
Modified: trunk/reactos/media/doc/README.WINE
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/media/doc/README.WINE?rev=…
==============================================================================
--- trunk/reactos/media/doc/README.WINE [iso-8859-1] (original)
+++ trunk/reactos/media/doc/README.WINE [iso-8859-1] Sun Nov 29 16:35:51 2015
@@ -254,6 +254,7 @@
reactos/lib/rtl/actctx.c # Partly synced with WineStaging-1.7.55
reactos/lib/rtl/timerqueue.c # Partly synced with WineStaging-1.7.55
+reactos/lib/rtl/wait.c # Partly synced with WineStaging-1.7.55
advapi32 -
reactos/dll/win32/advapi32/wine/cred.c # Synced to WineStaging-1.7.55