| Index: util/win/exception_handler_server.cc
|
| diff --git a/util/win/exception_handler_server.cc b/util/win/exception_handler_server.cc
|
| index a831266411d906a014282aad3e46228b55c33665..278d6e1dbf2c75f50eeee99a11fb9c3bcb878292 100644
|
| --- a/util/win/exception_handler_server.cc
|
| +++ b/util/win/exception_handler_server.cc
|
| @@ -184,9 +184,8 @@ class ClientData {
|
| ExceptionHandlerServer::Delegate::~Delegate() {
|
| }
|
|
|
| -ExceptionHandlerServer::ExceptionHandlerServer(Delegate* delegate)
|
| - : delegate_(delegate),
|
| - port_(CreateIoCompletionPort(INVALID_HANDLE_VALUE, nullptr, 0, 1)),
|
| +ExceptionHandlerServer::ExceptionHandlerServer()
|
| + : port_(CreateIoCompletionPort(INVALID_HANDLE_VALUE, nullptr, 0, 1)),
|
| clients_lock_(),
|
| clients_() {
|
| }
|
| @@ -194,7 +193,8 @@ ExceptionHandlerServer::ExceptionHandlerServer(Delegate* delegate)
|
| ExceptionHandlerServer::~ExceptionHandlerServer() {
|
| }
|
|
|
| -void ExceptionHandlerServer::Run(const std::string& pipe_name) {
|
| +void ExceptionHandlerServer::Run(Delegate* delegate,
|
| + const std::string& pipe_name) {
|
| uint64_t shutdown_token = base::RandUint64();
|
| // We create two pipe instances, so that there's one listening while the
|
| // PipeServiceProc is processing a registration.
|
| @@ -217,7 +217,7 @@ void ExceptionHandlerServer::Run(const std::string& pipe_name) {
|
| internal::PipeServiceContext* context =
|
| new internal::PipeServiceContext(port_.get(),
|
| pipe,
|
| - delegate_,
|
| + delegate,
|
| &clients_lock_,
|
| &clients_,
|
| shutdown_token);
|
| @@ -225,7 +225,7 @@ void ExceptionHandlerServer::Run(const std::string& pipe_name) {
|
| CreateThread(nullptr, 0, &PipeServiceProc, context, 0, nullptr));
|
| }
|
|
|
| - delegate_->ExceptionHandlerServerStarted();
|
| + delegate->ExceptionHandlerServerStarted();
|
|
|
| // This is the main loop of the server. Most work is done on the threadpool,
|
| // other than process end handling which is posted back to this main thread,
|
|
|