From 576edfaaed3f2dc90212eb817defed4272514540 Mon Sep 17 00:00:00 2001 From: Vinnie Falco Date: Wed, 2 Aug 2017 16:45:54 -0700 Subject: [PATCH] eof on accept returns error::closed --- CHANGELOG.md | 1 + include/boost/beast/websocket/impl/accept.ipp | 7 +++++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5054ea8..16a4dc4f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ WebSocket: * Remove obsolete frame tests * Refactor fail/clode code * Call do_fail from read_some +* eof on accept returns error::closed -------------------------------------------------------------------------------- diff --git a/include/boost/beast/websocket/impl/accept.ipp b/include/boost/beast/websocket/impl/accept.ipp index a0d2c5b5..14a7a997 100644 --- a/include/boost/beast/websocket/impl/accept.ipp +++ b/include/boost/beast/websocket/impl/accept.ipp @@ -299,6 +299,8 @@ operator()(error_code ec) case 1: { + if(ec == http::error::end_of_stream) + ec = error::closed; if(ec) break; // Arguments from our step must be @@ -877,8 +879,9 @@ do_accept( error_code& ec) { http::request_parser p; - http::read(next_layer(), - rd_.buf, p, ec); + http::read(next_layer(), rd_.buf, p, ec); + if(ec == http::error::end_of_stream) + ec = error::closed; if(ec) return; do_accept(p.get(), decorator, ec);