Fix ssl::stream bug that may cause spurious 'short read' errors.
diff --git a/asio/include/asio/ssl/detail/io.hpp b/asio/include/asio/ssl/detail/io.hpp index 0916bea..3dfe964 100644 --- a/asio/include/asio/ssl/detail/io.hpp +++ b/asio/include/asio/ssl/detail/io.hpp
@@ -220,7 +220,9 @@ } default: - if (bytes_transferred != ~std::size_t(0) && !ec_) + if (bytes_transferred == ~std::size_t(0)) + bytes_transferred = 0; // Timer cancellation, no data transferred. + else if (!ec_) ec_ = ec; switch (want_)