From 17fb92654ed9a12fe6c6298369e8788d97949f6d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrien=20B=C3=A9raud?= <adrien.beraud@savoirfairelinux.com> Date: Tue, 3 Dec 2019 16:45:19 -0500 Subject: [PATCH] http: check parser before use --- src/http.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/http.cpp b/src/http.cpp index 0017b0d0..abb9611b 100644 --- a/src/http.cpp +++ b/src/http.cpp @@ -874,7 +874,7 @@ Request::terminate(const asio::error_code& ec) logger_->e("[http:request:%i] end with error: %s", id_, ec.message().c_str()); // set response outcome, ignore end of file and abort - if (!ec or ec == asio::error::eof) + if ((!ec or ec == asio::error::eof) and parser_) response_.status_code = parser_->status_code; else response_.status_code = 0; @@ -882,7 +882,7 @@ Request::terminate(const asio::error_code& ec) response_.aborted = ec == asio::error::operation_aborted; if (logger_) - logger_->d("[http:request:%i] done with status code %u", id_, parser_->status_code); + logger_->d("[http:request:%i] done with status code %u", id_, response_.status_code); if (connection_type_ != restinio::http_connection_header_t::keep_alive) if (auto c = conn_) c->close(); -- GitLab