diff --git a/src/brpc/policy/http_rpc_protocol.cpp b/src/brpc/policy/http_rpc_protocol.cpp index 007bce3901..374b1df9fb 100644 --- a/src/brpc/policy/http_rpc_protocol.cpp +++ b/src/brpc/policy/http_rpc_protocol.cpp @@ -811,8 +811,10 @@ class HttpResponseSenderAsDone : public google::protobuf::Closure { public: explicit HttpResponseSenderAsDone(HttpResponseSender* s) : _sender(std::move(*s)) {} void Run() override { - _sender._cntl->CallAfterRpcResp( - _sender._messages->Request(), _sender._messages->Response()); + if (NULL != _sender._messages) { + _sender._cntl->CallAfterRpcResp(_sender._messages->Request(), + _sender._messages->Response()); + } delete this; }