Fix hash function error at x64 68/316768/2
authorEunki, Hong <eunkiki.hong@samsung.com>
Wed, 28 Aug 2024 01:56:20 +0000 (10:56 +0900)
committerEunki, Hong <eunkiki.hong@samsung.com>
Wed, 28 Aug 2024 02:17:16 +0000 (11:17 +0900)
Since RendererKey is not a void* type for __LP64__ case,
we should not shift RendererKey.Value() based on size of Render::Renderer
struct size.

Change-Id: If578d0b5057b93ee69468d8422613471288d9384
Signed-off-by: Eunki, Hong <eunkiki.hong@samsung.com>
dali/internal/update/common/scene-graph-scene.h

index 0f05158..1d2b6d9 100644 (file)
@@ -76,7 +76,12 @@ struct DirtyRectKey
     std::size_t operator()(DirtyRectKey const& key) const noexcept
     {
       constexpr std::size_t nodeShift     = Dali::Log<1 + sizeof(Node)>::value;
+
+#if defined(__LP64__)
+      constexpr std::size_t rendererShift = 0;
+#else
       constexpr std::size_t rendererShift = Dali::Log<1 + sizeof(Render::Renderer)>::value;
+#endif
 
       constexpr std::size_t zitterShift = sizeof(std::size_t) * 4; // zitter shift to avoid hash collision