Browse Source

Fix Variant hashing for floats

Incorrectly hashed floats as single precision
Ninni Pipping 2 years ago
parent
commit
e6a9e0cdec
1 changed files with 2 additions and 2 deletions
  1. 2 2
      core/variant/variant.cpp

+ 2 - 2
core/variant/variant.cpp

@@ -2941,7 +2941,7 @@ uint32_t Variant::recursive_hash(int recursion_count) const {
 			return hash_one_uint64((uint64_t)_data._int);
 		} break;
 		case FLOAT: {
-			return hash_murmur3_one_float(_data._float);
+			return hash_murmur3_one_double(_data._float);
 		} break;
 		case STRING: {
 			return reinterpret_cast<const String *>(_data._mem)->hash();
@@ -3158,7 +3158,7 @@ uint32_t Variant::recursive_hash(int recursion_count) const {
 				}
 				return hash_fmix32(h);
 			} else {
-				return hash_murmur3_one_float(0.0);
+				return hash_murmur3_one_double(0.0);
 			}
 
 		} break;