[Bug 10317] New: After CreateNamedPipe and ReadFile, CancelIO returns false .

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Nov 5 07:30:00 CST 2007


http://bugs.winehq.org/show_bug.cgi?id=10317

           Summary: After CreateNamedPipe and ReadFile, CancelIO returns
                    false.
           Product: Wine
           Version: 0.9.47.
          Platform: PC
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: wine-kernel
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: skiy at actionpos.co.za


Created an attachment (id=8972)
 --> (http://bugs.winehq.org/attachment.cgi?id=8972)
Test case output, source code

Call CreateNamedPipe with FILE_FLAG_OVERLAPPED and PIPE_ACCESS_INBOUND, then do
a ReadFile after someone has connected (in this case, just a CreateFile in the
same thread). Now this read would normally return fine, if we just waited for
the data to appear, however, if for whatever reason we have to stop waiting,
i.e. using a CancelIO call, then the CancelIO returns false on Wine. It returns
true on Windows. The problem is not with CancelIO, but rather with
NtCancelIoFile, as the attached test case will show. (NtCancelIoFile should
return 0 on Wine -- as it does on Windows -- instead it returns 192, which
confuses the CancelIO and makes it return false.) Please do not patch CancelIO
to just map the 192 to a true, this is not right! The problem is with
NtCancelIoFile (or somewhere within it).


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list