[PATCH try2 2/5] wininet: Free handle structs in
WININET_Release.
Robert Shearman
rob at codeweavers.com
Mon Aug 20 03:50:18 CDT 2007
Misha Koshelev wrote:
> This is necessary so that we send the INTERNET_STATUS_HANDLE_CLOSING before, for example
> INTERNET_STATUS_CLOSE_CONNECTION gets sent from HTTP_CloseConnection in HTTP_CloseHTTPRequestHandle.
> This can be tested on native/with native wininet on wine because although we do not send
> INTERNET_STATUS_CLOSE_CONNECTION correctly when the data is finished reading on wine as native
> does, if we simply don't read all the data (or any data, changing the while TRUE's to while FALSE's
> in the InternetReadFiel_test for example in wininet/tests/http.c) then these do in fact get sent
> as a response to InternetCloseHandle like they do on wine, and INTERNET_STATUS_HANDLE_CLOSING
> always gets sent afterwards (last).
>
It seems like it would be better to add a close_connection method to go
along with destroy, instead of leaving the handle in a half-destroyed
state. Either that, or to not use INTERNET_SendCallback to send the
callback in this case so that you don't have to have a
WININETHANDLEHEADER object still around.
--
Rob Shearman
More information about the wine-devel
mailing list