Index: content/public/common/common_param_traits.h |
diff --git a/content/public/common/common_param_traits.h b/content/public/common/common_param_traits.h |
index 69fb84a5fb6c8539656293ca6ce004c12e9ed3a8..fcdd081d2fc39fa9a4b97ff5bf970475c00cbce8 100644 |
--- a/content/public/common/common_param_traits.h |
+++ b/content/public/common/common_param_traits.h |
@@ -82,7 +82,8 @@ struct ParamTraits<gfx::NativeWindow> { |
static void Write(Message* m, const param_type& p) { |
#if defined(OS_WIN) |
// HWNDs are always 32 bits on Windows, even on 64 bit systems. |
- m->WriteUInt32(reinterpret_cast<uint32>(p)); |
+ // Cast through uintptr_t and then uint32 to make the truncation explicit. |
+ m->WriteUInt32(static_cast<uint32>(reinterpret_cast<uintptr_t>(p))); |
#else |
m->WriteData(reinterpret_cast<const char*>(&p), sizeof(p)); |
#endif |