mirror of
https://github.com/boostorg/asio.git
synced 2026-02-22 01:32:08 +00:00
10fba74faaff3509068df3e90921958c2f3f3620
When calling handle->release(), Asio uses kernel-provided NtSetInformationFile() routine to remove IOCP for the specific handle. Since this routine is not part of SDK, Asio retrieves the address of that function from NTDLL.DLL and caches it into nt_set_info_ class member. The fact that address is cached is checked by comparing it to 0. The bug is that class member is not initialized and contains undefined value, so Asio assumes that the address is already retrieved and uses undefined value, which leads to acces violation. Fix by initializing nt_set_info_ to zero, as it is done for sockets in win_iocp_socket_service_base.ipp.
Description
Mirrored via gitea-mirror
Languages
C++
99.6%
HTML
0.2%
Perl
0.2%