summaryrefslogtreecommitdiff
path: root/http
diff options
context:
space:
mode:
authorzhaogang.0108 <zhaogang.0108@bytedance.com>2023-12-22 11:53:40 +0300
committerzhaogang.0108 <zhaogang.0108@bytedance.com>2023-12-25 09:50:41 +0300
commita88942019fdd3d8fc366999f7c178f3e1c18b2fe (patch)
treefc129a92baf358352069a1ce015f787dd73a6923 /http
parentc48377db9e745fe5169b58cf2812ff306c30057a (diff)
downloadbmcweb-a88942019fdd3d8fc366999f7c178f3e1c18b2fe.tar.xz
bmcweb: Add nullptr check for weakptr
When we call a null weakptr, it will cause a crash. Add nullptr check for weakptr can avoid this situation. Tested: bmcweb.service did not experience core-dump. Change-Id: I4490d68c70ea5d43681f4fb18b3859afb01ed70a Signed-off-by: Zhao Gang <zhaogang.0108@bytedance.com>
Diffstat (limited to 'http')
-rw-r--r--http/websocket.hpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/http/websocket.hpp b/http/websocket.hpp
index 027ab24642..4f5b3c18a6 100644
--- a/http/websocket.hpp
+++ b/http/websocket.hpp
@@ -162,6 +162,11 @@ class ConnectionImpl : public Connection
[weak(weak_from_this()), onDone{std::move(onDone)}](
const boost::beast::error_code& ec, size_t) {
std::shared_ptr<Connection> self = weak.lock();
+ if (!self)
+ {
+ BMCWEB_LOG_ERROR("Connection went away");
+ return;
+ }
// Call the done handler regardless of whether we
// errored, but before we close things out