From 39a853c57b4ed6612a6c4e31e66de65139d0fe83 Mon Sep 17 00:00:00 2001 From: Konrado85 <63104554+Konrado85@users.noreply.github.com> Date: Sat, 20 Jun 2020 23:30:19 +0200 Subject: [PATCH 1/2] Fix infinite loop in FieldValues Update `FieldValues` test object so that it doesn't cause an infinite loop if it is actually created. See gh-22040 --- .../boot/configurationsample/fieldvalues/FieldValues.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java index 7dbdc96de1f..16e6734f106 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java +++ b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java @@ -108,7 +108,7 @@ public class FieldValues { private Integer[] integerArray = new Integer[] { 42, 24 }; - private FieldValues[] unknownArray = new FieldValues[] { new FieldValues() }; + private FieldValues[] unknownArray; private Duration durationNone; From 3b3a49db1f55f6842ce104df710caabfd0e77843 Mon Sep 17 00:00:00 2001 From: Phillip Webb Date: Mon, 22 Jun 2020 12:00:03 -0700 Subject: [PATCH 2/2] Polish 'Fix infinite loop in FieldValues' See gh-22040 --- .../fieldvalues/FieldValues.java | 4 +-- .../fieldvalues/UnknownElementType.java | 26 +++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/UnknownElementType.java diff --git a/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java index 16e6734f106..b18a6461499 100644 --- a/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java +++ b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/FieldValues.java @@ -1,5 +1,5 @@ /* - * Copyright 2012-2019 the original author or authors. + * Copyright 2012-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -108,7 +108,7 @@ public class FieldValues { private Integer[] integerArray = new Integer[] { 42, 24 }; - private FieldValues[] unknownArray; + private UnknownElementType[] unknownArray = new UnknownElementType[] { new UnknownElementType() }; private Duration durationNone; diff --git a/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/UnknownElementType.java b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/UnknownElementType.java new file mode 100644 index 00000000000..06b7d2b0ff1 --- /dev/null +++ b/spring-boot-project/spring-boot-tools/spring-boot-configuration-processor/src/test/java/org/springframework/boot/configurationsample/fieldvalues/UnknownElementType.java @@ -0,0 +1,26 @@ +/* + * Copyright 2012-2020 the original author or authors. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * https://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package org.springframework.boot.configurationsample.fieldvalues; + +/** + * Type used to check unknown array element types. + * + * @author Phillip Webb + */ +public class UnknownElementType { + +}