diff --git a/Assets/graphQl-client/Scripts/Core/GraphApi.cs b/Assets/graphQl-client/Scripts/Core/GraphApi.cs index 510c7ef..e55ff3a 100644 --- a/Assets/graphQl-client/Scripts/Core/GraphApi.cs +++ b/Assets/graphQl-client/Scripts/Core/GraphApi.cs @@ -93,21 +93,32 @@ public async void CancelSubscription(ClientWebSocket cws, string socketId = "1") #region Utility - private static string JsonToArgument(string jsonInput){ + private static string JsonToArgument(string jsonInput) + { char[] jsonChar = jsonInput.ToCharArray(); List indexes = new List(); + bool insideString = false; jsonChar[0] = ' '; jsonChar[jsonChar.Length - 1] = ' '; - for (int i = 0; i < jsonChar.Length; i++){ - if (jsonChar[i] == '\"'){ - if (indexes.Count == 2) - indexes = new List(); + + for (int i = 0; i < jsonChar.Length; i++) + { + if (jsonChar[i] == '\"') + { + insideString = !insideString; + + if (insideString) + { + indexes.Clear(); + } indexes.Add(i); } - if (jsonChar[i] == ':'){ + if (jsonChar[i] == ':' && !insideString && indexes.Count == 2) + { jsonChar[indexes[0]] = ' '; jsonChar[indexes[1]] = ' '; + indexes.Clear(); } }