[PATCH v3 3/4] server: Don't block when writing to named pipes in PIPE_NOWAIT mode.

Brendan Shanks bshanks at codeweavers.com
Fri Oct 4 13:30:27 CDT 2019


> On Oct 4, 2019, at 9:17 AM, Jacek Caban <jacek at codeweavers.com> wrote:
> 
> Hi Brendan,
> 
> On 10/3/19 9:57 PM, Brendan Shanks wrote:
>> +            else if (message->async && (pipe_end->flags & NAMED_PIPE_NONBLOCKING_MODE) &&
>> +                     !async_waiting( &reader->read_q ))
> 
> 
> async_waiting() may not do the right thing here. Note that it checks only head of the queue. We may have the head complete (for example cancelled, but the result is still being passed to the client). You may check find_pending_async() result instead.
> 

Thanks, that makes sense. I made the change and will send another version out.

Brendan


More information about the wine-devel mailing list