From dff2b19c56f9f4309a40017e15c0d2f80fec2605 Mon Sep 17 00:00:00 2001 From: ADBHXNLOL <101487458+ADBHXNLOL@users.noreply.github.com> Date: Sat, 12 Sep 2026 07:15:26 -0400 Subject: [PATCH] json2: export Value::clear (#584) Export the existing clear implementation while preserving tree ownership and root handler metadata. --- src/libs/libJson2.cpp | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/libs/libJson2.cpp b/src/libs/libJson2.cpp index 323e4135c..ad684f9c9 100644 --- a/src/libs/libJson2.cpp +++ b/src/libs/libJson2.cpp @@ -1006,6 +1006,21 @@ static int32_t KYTY_SYSV_ABI JsonValueCount(const JsonValue* self) { } } +static void KYTY_SYSV_ABI JsonValueClearMethod(void* self) { + PRINT_NAME(); + + LOGF("\t self = 0x%016" PRIx64 "\n", reinterpret_cast(self)); + + auto* value = reinterpret_cast(self); + if (value != nullptr) { + auto* parent = value->parent; + auto* rootparam = value->rootparam; + JsonValueClear(value); + value->parent = parent; + value->rootparam = rootparam; + } +} + LIB_DEFINE(InitNet_1_Json2) { LIB_FUNC("-hJRce8wn1U", LibJson2::JsonMemAllocatorCtor); LIB_FUNC("WSOuge5IsCg", LibJson2::JsonInitParameter2Ctor); @@ -1076,6 +1091,7 @@ LIB_DEFINE(InitNet_1_Json2) { LIB_FUNC("RBw+4NukeGQ", LibJson2::JsonValueCount); LIB_FUNC("+drDFyAS6u4", LibJson2::JsonInitializerSetGlobalNullAccessCallback); LIB_FUNC("00oCq0RwSAY", LibJson2::JsonInitializerSetGlobalNullAccessCallback); + LIB_FUNC("FIjXN2TkuTs", LibJson2::JsonValueClearMethod); } } // namespace LibJson2