diff --git a/packages/react-native/Libraries/WebPerformance/PerformanceEntryReporter.cpp b/packages/react-native/Libraries/WebPerformance/PerformanceEntryReporter.cpp index 6c0ec3d77df..ff7389eeb17 100644 --- a/packages/react-native/Libraries/WebPerformance/PerformanceEntryReporter.cpp +++ b/packages/react-native/Libraries/WebPerformance/PerformanceEntryReporter.cpp @@ -10,6 +10,7 @@ #include #include "NativePerformanceObserver.h" +#include #include namespace facebook::react { @@ -298,8 +299,7 @@ void PerformanceEntryReporter::scheduleFlushBuffer() { struct StrKey { uint32_t key; - StrKey(std::string_view s) - : key(folly::hash::fnv32_buf(s.data(), s.length())) {} + StrKey(std::string_view s) : key(std::hash{}(s)) {} bool operator==(const StrKey& rhs) const { return key == rhs.key; diff --git a/packages/react-native/ReactCommon/react/renderer/core/PropsMacros.h b/packages/react-native/ReactCommon/react/renderer/core/PropsMacros.h index a3d07018fb9..d940fd6069c 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/PropsMacros.h +++ b/packages/react-native/ReactCommon/react/renderer/core/PropsMacros.h @@ -8,6 +8,7 @@ #pragma once #include +#include // We need to use clang pragmas inside of a macro below, // so we need to pull out the "if" statement here. @@ -26,7 +27,7 @@ CLANG_PRAGMA("clang diagnostic pop") \ }()) -#define RAW_PROPS_KEY_HASH(s) folly::hash::fnv32_buf(s, std::strlen(s)) +#define RAW_PROPS_KEY_HASH(s) std::hash{}(s) // Convenience for building setProps switch statements. // This injects `fromRawValue` into source; each file that uses diff --git a/packages/react-native/ReactCommon/react/renderer/core/RawPropsParser.cpp b/packages/react-native/ReactCommon/react/renderer/core/RawPropsParser.cpp index 3ac97018d5c..620685d713d 100644 --- a/packages/react-native/ReactCommon/react/renderer/core/RawPropsParser.cpp +++ b/packages/react-native/ReactCommon/react/renderer/core/RawPropsParser.cpp @@ -198,7 +198,7 @@ void RawPropsParser::iterateOverValues( auto name = nameValue.utf8(runtime); - auto nameHash = RAW_PROPS_KEY_HASH(name.c_str()); + auto nameHash = RAW_PROPS_KEY_HASH(name); auto rawValue = RawValue(jsi::dynamicFromValue(runtime, value)); visit(nameHash, name.c_str(), rawValue); @@ -213,7 +213,7 @@ void RawPropsParser::iterateOverValues( for (const auto& pair : dynamic.items()) { auto name = pair.first.getString(); - auto nameHash = RAW_PROPS_KEY_HASH(name.c_str()); + auto nameHash = RAW_PROPS_KEY_HASH(name); auto rawValue = RawValue{pair.second}; visit(nameHash, name.c_str(), rawValue); }