[Bf-blender-cvs] [40d90456eaa] master: Fix logical error in BLI_hash_pointer_to_color

Campbell Barton noreply at git.blender.org
Fri Apr 17 11:34:27 CEST 2020


Commit: 40d90456eaa0c85ad3e738a03f2c223cb66bf966
Author: Campbell Barton
Date:   Fri Apr 17 19:30:14 2020 +1000
Branches: master
https://developer.blender.org/rB40d90456eaa0c85ad3e738a03f2c223cb66bf966

Fix logical error in BLI_hash_pointer_to_color

'hash_b' was always zero as it's range was bit-shifted away.

===================================================================

M	source/blender/blenlib/BLI_hash.h

===================================================================

diff --git a/source/blender/blenlib/BLI_hash.h b/source/blender/blenlib/BLI_hash.h
index d09291b64be..3871ddf956a 100644
--- a/source/blender/blenlib/BLI_hash.h
+++ b/source/blender/blenlib/BLI_hash.h
@@ -81,7 +81,7 @@ BLI_INLINE void BLI_hash_pointer_to_color(const void *ptr, int *r, int *g, int *
 {
   size_t val = (size_t)ptr;
   const size_t hash_a = BLI_hash_int(val & 0x0000ffff);
-  const size_t hash_b = BLI_hash_int((uint)((val & 0xffff0000) >> 32));
+  const size_t hash_b = BLI_hash_int((uint)((val & 0xffff0000) >> 16));
   const size_t hash = hash_a ^ (hash_b + 0x9e3779b9 + (hash_a << 6) + (hash_a >> 2));
   *r = (hash & 0xff0000) >> 16;
   *g = (hash & 0x00ff00) >> 8;



More information about the Bf-blender-cvs mailing list