Skip to content

Conversation

@BillyONeal
Copy link
Member

A customer reported that win WinHttpSendRequest fails, WinHTTP still
delivers WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING callbacks. When
_start_request_send encountered a failure, it deleted the context
weak_ptr, and then the WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING
also tried to delete it, resulting in double frees.

We don't fully understand WinHTTP's behavior and it's possible this may
leak a bit, but that's better than a double free.

A customer reported that win WinHttpSendRequest fails, WinHTTP still
delivers WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING callbacks. When
_start_request_send encountered a failure, it deleted the context
weak_ptr, and then the WINHTTP_CALLBACK_STATUS_HANDLE_CLOSING
also tried to delete it, resulting in double frees.

We don't fully understand WinHTTP's behavior and it's possible this may
leak a bit, but that's better than a double free.
@BillyONeal BillyONeal merged commit c66f84d into microsoft:master Jan 19, 2019
@BillyONeal BillyONeal deleted the doublefree branch January 19, 2019 01:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant