From 79b0cd822e7c788c24813490fb32815c51edfe23 Mon Sep 17 00:00:00 2001 From: Etai codes Date: Sun, 29 Mar 2026 17:12:08 +0300 Subject: [PATCH 1/3] Update BasicJsonParser.java fixed an ambiguous variable name - the name "values" makes no sense when working with a key-value pair, since a reader will associate it with the value only when it contains both a value and a key. Signed-off-by: Etai codes --- .../springframework/boot/json/BasicJsonParser.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java index a2560c215618..28c0a1588eea 100644 --- a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java +++ b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java @@ -29,7 +29,7 @@ /** * Really basic JSON parser for when you have nothing else available. Comes with some - * limitations with respect to the JSON specification (e.g. only supports String values), + * limitations with respect to the JSON specification (e.g. only supports String rawSplit), * so users will probably prefer to have a library handle things instead (Jackson or Snake * YAML are supported). * @@ -83,10 +83,10 @@ private Map parseMapInternal(int nesting, String json) { json = trimEdges(json, '{', '}').trim(); for (String pair : tokenize(json)) { String[] split = StringUtils.split(pair, ":"); - @Nullable String[] values = (split != null) ? StringUtils.trimArrayElements(split) : null; - Assert.state(values != null, () -> "Unable to parse '%s'".formatted(pair)); - String rawKey = values[0]; - String rawValue = values[1]; + @Nullable String[] rawSplit = (split != null) ? StringUtils.trimArrayElements(split) : null; + Assert.state(rawSplit != null, () -> "Unable to parse '%s'".formatted(pair)); + String rawKey = rawSplit[0]; + String rawValue = rawSplit[1]; Assert.state(rawKey != null, () -> "rawKew is null in '%s'".formatted(pair)); Assert.state(rawKey.startsWith("\"") && rawKey.endsWith("\""), "Expecting double-quotes around field names"); @@ -170,7 +170,7 @@ else if (ch == '\\') { private static final class Tracking { - private final int[] counts = new int[Tracked.values().length]; + private final int[] counts = new int[Tracked.rawSplit().length]; boolean in(Tracked... tracked) { return Arrays.stream(tracked).mapToInt(this::get).anyMatch((i) -> i > 0); From 20c24d876cf1d2abfb35a46961177e4a28c008fc Mon Sep 17 00:00:00 2001 From: Etai codes Date: Sun, 29 Mar 2026 17:14:50 +0300 Subject: [PATCH 2/3] Update BasicJsonParser.java earlier search & replace accidentally overrode doc string Signed-off-by: Etai codes --- .../java/org/springframework/boot/json/BasicJsonParser.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java index 28c0a1588eea..9b594503d153 100644 --- a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java +++ b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java @@ -29,7 +29,7 @@ /** * Really basic JSON parser for when you have nothing else available. Comes with some - * limitations with respect to the JSON specification (e.g. only supports String rawSplit), + * limitations with respect to the JSON specification (e.g. only supports String values), * so users will probably prefer to have a library handle things instead (Jackson or Snake * YAML are supported). * From 7d0d092b911893e39d14a2b2b8564c493c50dddb Mon Sep 17 00:00:00 2001 From: Etai codes Date: Sun, 29 Mar 2026 17:23:40 +0300 Subject: [PATCH 3/3] Update BasicJsonParser.java fixed another search & replace error Signed-off-by: Etai codes --- .../java/org/springframework/boot/json/BasicJsonParser.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java index 9b594503d153..aef26c9bcb20 100644 --- a/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java +++ b/core/spring-boot/src/main/java/org/springframework/boot/json/BasicJsonParser.java @@ -170,7 +170,7 @@ else if (ch == '\\') { private static final class Tracking { - private final int[] counts = new int[Tracked.rawSplit().length]; + private final int[] counts = new int[Tracked.values().length]; boolean in(Tracked... tracked) { return Arrays.stream(tracked).mapToInt(this::get).anyMatch((i) -> i > 0);