Index: ipc/ipc_message_utils.h |
diff --git a/ipc/ipc_message_utils.h b/ipc/ipc_message_utils.h |
index b05f76dd17334c7a98385dc1114795e0bf384ec4..598c0e56c18d72059e835af9513947ff9b59981f 100644 |
--- a/ipc/ipc_message_utils.h |
+++ b/ipc/ipc_message_utils.h |
@@ -161,6 +161,22 @@ struct ParamTraits<unsigned int> { |
}; |
template <> |
+struct ParamTraits<void*> { |
+ typedef void* param_type; |
+ static void Write(Message* m, const param_type& p) { |
+ m->WriteLongUsingDangerousNonPortableLessPersistableForm( |
+ reinterpret_cast<long>(p)); |
+ } |
+ static bool Read(const Message* m, PickleIterator* iter, param_type* r) { |
+ long p = 0; |
+ bool ret = m->ReadLong(iter, &p); |
+ *r = reinterpret_cast<void*>(p); |
+ return ret; |
+ } |
+ IPC_EXPORT static void Log(const param_type& p, std::string* l) {} |
+}; |
+ |
+template <> |
struct ParamTraits<long> { |
typedef long param_type; |
static void Write(Message* m, const param_type& p) { |