| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "content/common/content_param_traits.h" | 5 #include "content/common/content_param_traits.h" |
| 6 | 6 |
| 7 #include "base/strings/string_number_conversions.h" | 7 #include "base/strings/string_number_conversions.h" |
| 8 #include "content/common/input/web_input_event_traits.h" | 8 #include "content/common/input/web_input_event_traits.h" |
| 9 #include "net/base/ip_endpoint.h" | 9 #include "net/base/ip_endpoint.h" |
| 10 #include "ui/gfx/range/range.h" | 10 #include "ui/gfx/range/range.h" |
| 11 | 11 |
| 12 namespace IPC { | 12 namespace IPC { |
| 13 | 13 |
| 14 void ParamTraits<gfx::Range>::Write(Message* m, const gfx::Range& r) { | 14 void ParamTraits<gfx::Range>::Write(Message* m, const gfx::Range& r) { |
| 15 m->WriteSizeT(r.start()); | 15 m->WriteSizeT(r.start()); |
| 16 m->WriteSizeT(r.end()); | 16 m->WriteSizeT(r.end()); |
| 17 } | 17 } |
| 18 | 18 |
| 19 bool ParamTraits<gfx::Range>::Read(const Message* m, | 19 bool ParamTraits<gfx::Range>::Read(const Message* m, |
| 20 PickleIterator* iter, | 20 PickleIterator* iter, |
| 21 gfx::Range* r) { | 21 gfx::Range* r) { |
| 22 size_t start, end; | 22 size_t start, end; |
| 23 if (!iter->ReadSizeT(&start) || !iter->ReadSizeT(&end)) | 23 if (!m->ReadSizeT(iter, &start) || !m->ReadSizeT(iter, &end)) |
| 24 return false; | 24 return false; |
| 25 r->set_start(start); | 25 r->set_start(start); |
| 26 r->set_end(end); | 26 r->set_end(end); |
| 27 return true; | 27 return true; |
| 28 } | 28 } |
| 29 | 29 |
| 30 void ParamTraits<gfx::Range>::Log(const gfx::Range& r, std::string* l) { | 30 void ParamTraits<gfx::Range>::Log(const gfx::Range& r, std::string* l) { |
| 31 l->append(base::StringPrintf("(%" PRIuS ", %" PRIuS ")", r.start(), r.end())); | 31 l->append(base::StringPrintf("(%" PRIuS ", %" PRIuS ")", r.start(), r.end())); |
| 32 } | 32 } |
| 33 | 33 |
| 34 void ParamTraits<WebInputEventPointer>::Write(Message* m, const param_type& p) { | 34 void ParamTraits<WebInputEventPointer>::Write(Message* m, const param_type& p) { |
| 35 m->WriteData(reinterpret_cast<const char*>(p), p->size); | 35 m->WriteData(reinterpret_cast<const char*>(p), p->size); |
| 36 } | 36 } |
| 37 | 37 |
| 38 bool ParamTraits<WebInputEventPointer>::Read(const Message* m, | 38 bool ParamTraits<WebInputEventPointer>::Read(const Message* m, |
| 39 PickleIterator* iter, | 39 PickleIterator* iter, |
| 40 param_type* r) { | 40 param_type* r) { |
| 41 const char* data; | 41 const char* data; |
| 42 int data_length; | 42 int data_length; |
| 43 if (!iter->ReadData(&data, &data_length)) { | 43 if (!m->ReadData(iter, &data, &data_length)) { |
| 44 NOTREACHED(); | 44 NOTREACHED(); |
| 45 return false; | 45 return false; |
| 46 } | 46 } |
| 47 if (data_length < static_cast<int>(sizeof(blink::WebInputEvent))) { | 47 if (data_length < static_cast<int>(sizeof(blink::WebInputEvent))) { |
| 48 NOTREACHED(); | 48 NOTREACHED(); |
| 49 return false; | 49 return false; |
| 50 } | 50 } |
| 51 param_type event = reinterpret_cast<param_type>(data); | 51 param_type event = reinterpret_cast<param_type>(data); |
| 52 // Check that the data size matches that of the event. | 52 // Check that the data size matches that of the event. |
| 53 if (data_length != static_cast<int>(event->size)) { | 53 if (data_length != static_cast<int>(event->size)) { |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 90 #undef CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_ | 90 #undef CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_ |
| 91 #include "content/common/content_param_traits_macros.h" | 91 #include "content/common/content_param_traits_macros.h" |
| 92 } // namespace IPC | 92 } // namespace IPC |
| 93 | 93 |
| 94 // Generate param traits log methods. | 94 // Generate param traits log methods. |
| 95 #include "ipc/param_traits_log_macros.h" | 95 #include "ipc/param_traits_log_macros.h" |
| 96 namespace IPC { | 96 namespace IPC { |
| 97 #undef CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_ | 97 #undef CONTENT_COMMON_CONTENT_PARAM_TRAITS_MACROS_H_ |
| 98 #include "content/common/content_param_traits_macros.h" | 98 #include "content/common/content_param_traits_macros.h" |
| 99 } // namespace IPC | 99 } // namespace IPC |
| OLD | NEW |