From 567b6e1d2113960a50c5b55b83d64aea19f08826 Mon Sep 17 00:00:00 2001 From: Katy Coe Date: Mon, 4 Jan 2021 04:53:48 +0100 Subject: [PATCH] C++: Fix "fields is not a member of app::String" for some IL2CPP projects --- Il2CppInspector.Common/Properties/Resources.resx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Il2CppInspector.Common/Properties/Resources.resx b/Il2CppInspector.Common/Properties/Resources.resx index 837898e..d4ea1a0 100644 --- a/Il2CppInspector.Common/Properties/Resources.resx +++ b/Il2CppInspector.Common/Properties/Resources.resx @@ -185,7 +185,7 @@ void il2cppi_new_console() { freopen_s((FILE**) stdout, "CONOUT$", "w", stdout); } -#if _MSC_VER >= 1920 +#if _MSC_VER >= 1920 // Helper function to convert Il2CppString to std::string std::string il2cppi_to_string(Il2CppString* str) { std::u16string u16(reinterpret_cast<const char16_t*>(str->chars)); @@ -194,8 +194,7 @@ std::string il2cppi_to_string(Il2CppString* str) { // Helper function to convert System.String to std::string std::string il2cppi_to_string(app::String* str) { - std::u16string u16(reinterpret_cast<const char16_t*>(&str->fields.m_firstChar)); - return std::wstring_convert<std::codecvt_utf8_utf16<char16_t>, char16_t>{}.to_bytes(u16); + return il2cppi_to_string(reinterpret_cast<Il2CppString*>(str)); } #endif @@ -220,7 +219,7 @@ void il2cppi_log_write(std::string text); // Helper function to open a new console window and redirect stdout there void il2cppi_new_console(); -#if _MSC_VER >= 1920 +#if _MSC_VER >= 1920 // Helper function to convert Il2CppString to std::string std::string il2cppi_to_string(Il2CppString* str);