From 27bfbb4b3a3ae68ddd22ff48a3332499a5ce3f02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=ADn=20Lucas=20Golini?= Date: Mon, 28 Sep 2026 10:10:44 -0300 Subject: [PATCH] * UIInspector now stores move-only event connections in a node-based map, avoiding the MSVC vector copy error. * Batch results now initialize as a JSON object. The previous initialization created an array, causing both reported Linux and macOS test failures. --- include/eepp/ui/tools/uiinspector.hpp | 5 ++++- src/eepp/ui/tools/uiinspectorserver.cpp | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/include/eepp/ui/tools/uiinspector.hpp b/include/eepp/ui/tools/uiinspector.hpp index 18ba56f13..821e0d135 100644 --- a/include/eepp/ui/tools/uiinspector.hpp +++ b/include/eepp/ui/tools/uiinspector.hpp @@ -7,6 +7,7 @@ #include #include #include +#include namespace EE { namespace UI { @@ -48,7 +49,9 @@ class EE_API UIInspector { Scene::Node* node{ nullptr }; Scene::EventConnection close; }; - using NodeHandles = UnorderedMap; + // EventConnection is move-only; keep these entries in a node-based map so map operations do not + // require copying the connection through the dense map's vector storage. + using NodeHandles = std::unordered_map; using ReverseNodeHandles = UnorderedMap; std::string registerNode( Scene::Node* node, const char* prefix, NodeHandles& handles, diff --git a/src/eepp/ui/tools/uiinspectorserver.cpp b/src/eepp/ui/tools/uiinspectorserver.cpp index 6c33ec225..f7fc98064 100644 --- a/src/eepp/ui/tools/uiinspectorserver.cpp +++ b/src/eepp/ui/tools/uiinspectorserver.cpp @@ -192,7 +192,7 @@ struct UIInspectorServer::Impl { Uint64 client; json id; json commands; - json results{ json::object() }; + json results = json::object(); std::map named; size_t index{ 0 }; unsigned frames{ 0 };