diff options
author | 2017-11-17 14:21:13 -0800 | |
---|---|---|
committer | 2017-11-28 10:30:53 -0800 | |
commit | 962722cbc02c5b1e00baaaad3ddeebd95bc3906d (patch) | |
tree | 302836e74fe021f494e3ccce87e4f915db020363 /.pylintrc | |
parent | 1972e5ce741dab2ffe671e0dfde00288005f19f4 (diff) |
Fix alignment issue in gpr_murmur_hash3
This function cast a void* to a uint32_t*. This is invalid, since a uint32_t* must be 32-bit-aligned, while the input key clearly isn't. Even though the function later uses memcpy to access the memory, by that point the compiler is allowed to assume that the pointer is aligned, and so it can output code that does an unaligned memory access.
In practice, this resulted in a crash on some devices when this code is compiled with optimizations for 32-bit ARM with the Android NDK r14.
Diffstat (limited to '.pylintrc')
0 files changed, 0 insertions, 0 deletions