Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(107)

Side by Side Diff: mojo/edk/system/master_connection_manager.cc

Issue 1353683005: EDK: Convert remaining scoped_ptr -> std::unique_ptr in //mojo/edk/system. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "mojo/edk/system/master_connection_manager.h" 5 #include "mojo/edk/system/master_connection_manager.h"
6 6
7 #include <memory> 7 #include <memory>
8 #include <utility>
8 9
9 #include "base/bind.h" 10 #include "base/bind.h"
10 #include "base/bind_helpers.h" 11 #include "base/bind_helpers.h"
11 #include "base/location.h" 12 #include "base/location.h"
12 #include "base/logging.h" 13 #include "base/logging.h"
13 #include "base/message_loop/message_loop.h" 14 #include "base/message_loop/message_loop.h"
14 #include "base/synchronization/waitable_event.h" 15 #include "base/synchronization/waitable_event.h"
15 #include "mojo/edk/embedder/master_process_delegate.h" 16 #include "mojo/edk/embedder/master_process_delegate.h"
16 #include "mojo/edk/embedder/platform_channel_pair.h" 17 #include "mojo/edk/embedder/platform_channel_pair.h"
17 #include "mojo/edk/embedder/platform_handle.h" 18 #include "mojo/edk/embedder/platform_handle.h"
(...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after
177 bytes = &data; 178 bytes = &data;
178 } 179 }
179 break; 180 break;
180 } 181 }
181 default: 182 default:
182 LOG(ERROR) << "Invalid message subtype " << message_view.subtype(); 183 LOG(ERROR) << "Invalid message subtype " << message_view.subtype();
183 FatalError(); // WARNING: This destroys us. 184 FatalError(); // WARNING: This destroys us.
184 return; 185 return;
185 } 186 }
186 187
187 scoped_ptr<MessageInTransit> response(new MessageInTransit( 188 std::unique_ptr<MessageInTransit> response(new MessageInTransit(
188 MessageInTransit::Type::CONNECTION_MANAGER_ACK, 189 MessageInTransit::Type::CONNECTION_MANAGER_ACK,
189 ConnectionManagerResultToMessageInTransitSubtype(result), num_bytes, 190 ConnectionManagerResultToMessageInTransitSubtype(result), num_bytes,
190 bytes)); 191 bytes));
191 192
192 if (result == Result::SUCCESS_CONNECT_NEW_CONNECTION) { 193 if (result == Result::SUCCESS_CONNECT_NEW_CONNECTION) {
193 DCHECK_EQ(message_view.subtype(), 194 DCHECK_EQ(message_view.subtype(),
194 MessageInTransit::Subtype::CONNECTION_MANAGER_CONNECT); 195 MessageInTransit::Subtype::CONNECTION_MANAGER_CONNECT);
195 DCHECK(platform_handle.is_valid()); 196 DCHECK(platform_handle.is_valid());
196 embedder::ScopedPlatformHandleVectorPtr platform_handles( 197 embedder::ScopedPlatformHandleVectorPtr platform_handles(
197 new embedder::PlatformHandleVector()); 198 new embedder::PlatformHandleVector());
198 platform_handles->push_back(platform_handle.release()); 199 platform_handles->push_back(platform_handle.release());
199 response->SetTransportData(util::MakeUnique<TransportData>( 200 response->SetTransportData(util::MakeUnique<TransportData>(
200 platform_handles.Pass(), 201 platform_handles.Pass(),
201 raw_channel_->GetSerializedPlatformHandleSize())); 202 raw_channel_->GetSerializedPlatformHandleSize()));
202 } else { 203 } else {
203 DCHECK(!platform_handle.is_valid()); 204 DCHECK(!platform_handle.is_valid());
204 } 205 }
205 206
206 if (!raw_channel_->WriteMessage(response.Pass())) { 207 if (!raw_channel_->WriteMessage(std::move(response))) {
207 LOG(ERROR) << "WriteMessage failed"; 208 LOG(ERROR) << "WriteMessage failed";
208 FatalError(); // WARNING: This destroys us. 209 FatalError(); // WARNING: This destroys us.
209 return; 210 return;
210 } 211 }
211 } 212 }
212 213
213 void MasterConnectionManager::Helper::OnError(Error /*error*/) { 214 void MasterConnectionManager::Helper::OnError(Error /*error*/) {
214 // Every error (read or write) is fatal (for that particular connection). Read 215 // Every error (read or write) is fatal (for that particular connection). Read
215 // errors are fatal since no more commands will be received from that 216 // errors are fatal since no more commands will be received from that
216 // connection. Write errors are fatal since it is no longer possible to send 217 // connection. Write errors are fatal since it is no longer possible to send
(...skipping 519 matching lines...) Expand 10 before | Expand all | Expand 10 after
736 } 737 }
737 738
738 void MasterConnectionManager::AssertOnPrivateThread() const { 739 void MasterConnectionManager::AssertOnPrivateThread() const {
739 // This should only be called after |Init()| and before |Shutdown()|. 740 // This should only be called after |Init()| and before |Shutdown()|.
740 DCHECK(private_thread_.message_loop()); 741 DCHECK(private_thread_.message_loop());
741 DCHECK_EQ(base::MessageLoop::current(), private_thread_.message_loop()); 742 DCHECK_EQ(base::MessageLoop::current(), private_thread_.message_loop());
742 } 743 }
743 744
744 } // namespace system 745 } // namespace system
745 } // namespace mojo 746 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/edk/system/local_message_pipe_endpoint.cc ('k') | mojo/edk/system/message_in_transit_queue.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698