wininet: Add tests for asynchronous HttpSendRequestEx/HttpEndRequest.

Hans Leidekker hans at meelstraat.net
Sat Apr 11 05:44:12 CDT 2009


On Saturday 11 April 2009 05:14:25 Nicolas Le Cam wrote:
 
> Your patch makes the test timeout on my machine
> (http://test.winehq.org/data/f212579ae9a1b770ebd34cec20f95e1977bb57f0/2000_w2k-sp4-fr/wininet:http.html).
> 
> Timeout occurs in HttpSendRequestEx_test on HttpEndRequest call which
> hang. Disabling test_async_HttpSendRequestEx makes it pass again.
> 
> After some tests it seems to be a timing issue, but I haven't been
> able to find a real solution. Just that waiting at least 500msec
> between the two HttpEndRequest, or waiting at least 150ms after the
> WaitForSingleObject that follow the second HttpEndRequest makes test
> pass. Reading response doesn't change anything.
> 
> After reading a little bit about how this works I don't see anything
> wrong. Perhaps you will.

Windows keeps a cache of connections, so when the second test is executed
within the cache timeout it will use the same connection and we will not
see certain notifications, such as INTERNET_STATUS_CLOSING_CONNECTION.

I have found that sleeping for 2 seconds is enough to defeat the cache.

 -Hans



More information about the wine-devel mailing list