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

Side by Side Diff: mojo/public/cpp/bindings/lib/control_message_handler.cc

Issue 2112093002: Mojo C++ bindings: Merge EncodePointers/DecodePointers into Serialize/Deserialize, respectively. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@61_array_fix
Patch Set: . Created 4 years, 5 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/public/cpp/bindings/lib/control_message_handler.h" 5 #include "mojo/public/cpp/bindings/lib/control_message_handler.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 #include <utility> 9 #include <utility>
10 10
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 response_params_ptr->query_version_result = QueryVersionResult::New(); 56 response_params_ptr->query_version_result = QueryVersionResult::New();
57 response_params_ptr->query_version_result->version = interface_version_; 57 response_params_ptr->query_version_result->version = interface_version_;
58 58
59 size_t size = PrepareToSerialize<RunResponseMessageParamsPtr>( 59 size_t size = PrepareToSerialize<RunResponseMessageParamsPtr>(
60 response_params_ptr, &context_); 60 response_params_ptr, &context_);
61 ResponseMessageBuilder builder(kRunMessageId, size, message->request_id()); 61 ResponseMessageBuilder builder(kRunMessageId, size, message->request_id());
62 62
63 RunResponseMessageParams_Data* response_params = nullptr; 63 RunResponseMessageParams_Data* response_params = nullptr;
64 Serialize<RunResponseMessageParamsPtr>(response_params_ptr, builder.buffer(), 64 Serialize<RunResponseMessageParamsPtr>(response_params_ptr, builder.buffer(),
65 &response_params, &context_); 65 &response_params, &context_);
66 response_params->EncodePointers();
67 bool ok = responder->Accept(builder.message()); 66 bool ok = responder->Accept(builder.message());
68 ALLOW_UNUSED_LOCAL(ok); 67 ALLOW_UNUSED_LOCAL(ok);
69 delete responder; 68 delete responder;
70 69
71 return true; 70 return true;
72 } 71 }
73 72
74 bool ControlMessageHandler::RunOrClosePipe(Message* message) { 73 bool ControlMessageHandler::RunOrClosePipe(Message* message) {
75 RunOrClosePipeMessageParams_Data* params = 74 RunOrClosePipeMessageParams_Data* params =
76 reinterpret_cast<RunOrClosePipeMessageParams_Data*>( 75 reinterpret_cast<RunOrClosePipeMessageParams_Data*>(
77 message->mutable_payload()); 76 message->mutable_payload());
78 params->DecodePointers();
79
80 RunOrClosePipeMessageParamsPtr params_ptr; 77 RunOrClosePipeMessageParamsPtr params_ptr;
81 Deserialize<RunOrClosePipeMessageParamsPtr>(params, &params_ptr, &context_); 78 Deserialize<RunOrClosePipeMessageParamsPtr>(params, &params_ptr, &context_);
82 79
83 return interface_version_ >= params_ptr->require_version->version; 80 return interface_version_ >= params_ptr->require_version->version;
84 } 81 }
85 82
86 } // namespace internal 83 } // namespace internal
87 } // namespace mojo 84 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/public/cpp/bindings/lib/bindings_internal.cc ('k') | mojo/public/cpp/bindings/lib/control_message_proxy.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698