Allow rety on Pending Input until Timeout is meat
Uwe Bonnes
bon at elektron.ikp.physik.tu-darmstadt.de
Wed May 25 20:03:49 CDT 2005
Changelog:
wine/dlls/ntdll/file.c: FILE_AsyncRead|WriteService
Wait for the object multiple times until TIMEOUT is meat
These three patches let me talk to the external avr-(usb-)-ice with Atmel
AvrStudio4.
--
Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Institut fuer Kernphysik Schlossgartenstrasse 9 64289 Darmstadt
--------- Tel. 06151 162516 -------- Fax. 06151 164321 ----------
Index: wine/dlls/ntdll/file.c
===================================================================
RCS file: /home/wine/wine/dlls/ntdll/file.c,v
retrieving revision 1.88
diff -u -r1.88 file.c
--- wine/dlls/ntdll/file.c 20 May 2005 19:16:37 -0000 1.88
+++ wine/dlls/ntdll/file.c 26 May 2005 00:24:24 -0000
@@ -530,6 +530,10 @@
if (flags & FD_FLAG_TIMEOUT)
{
ret = NtWaitForSingleObject(hEvent, TRUE, NULL);
+ while (io_status->u.Status == STATUS_PENDING)
+ {
+ ret = NtWaitForSingleObject(hEvent, TRUE, NULL);
+ }
NtClose(hEvent);
if (ret != STATUS_USER_APC)
fileio->queue_apc_on_error = 1;
@@ -742,6 +748,10 @@
if (flags & FD_FLAG_TIMEOUT)
{
ret = NtWaitForSingleObject(hEvent, TRUE, NULL);
+ while (io_status->u.Status == STATUS_PENDING)
+ {
+ ret = NtWaitForSingleObject(hEvent, TRUE, NULL);
+ }
NtClose(hEvent);
if (ret != STATUS_USER_APC)
fileio->queue_apc_on_error = 1;
More information about the wine-patches
mailing list