You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2024/03/18 14:14:47 UTC
(commons-configuration) 03/03: Fail fast with a NullPointerException if DataConfiguration.DataConfiguration(Configuration) is called with null
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-configuration.git
commit ccd7c07abceec01293990551cc31968b1db001c9
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Mon Mar 18 10:14:39 2024 -0400
Fail fast with a NullPointerException if
DataConfiguration.DataConfiguration(Configuration) is called with null
---
src/changes/changes.xml | 4 ++++
.../java/org/apache/commons/configuration2/DataConfiguration.java | 3 ++-
.../org/apache/commons/configuration2/TestDataConfiguration.java | 7 +++++--
3 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 349cd193..cc439875 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -23,6 +23,10 @@
<author email="dev@commons.apache.org">Apache Commons Community</author>
</properties>
<body>
+ <release version="2.10.2" date="YYYY-MM-DD" description="Minor release with new features and updated dependencies; requires Java 8 or above.">
+ <!-- FIX -->
+ <action type="fix" dev="ggregory" due-to="Gary Gregory">Fail fast with a NullPointerException if DataConfiguration.DataConfiguration(Configuration) is called with null.</action>
+ </release>
<release version="2.10.1" date="2024-03-17" description="Minor release with new features and updated dependencies; requires Java 8 or above.">
<!-- FIX -->
<action type="fix" issue="CONFIGURATION-840" dev="ggregory" due-to="Gary Gregory">StackOverflowError adding property in AbstractListDelimiterHandler.flattenIterator().</action>
diff --git a/src/main/java/org/apache/commons/configuration2/DataConfiguration.java b/src/main/java/org/apache/commons/configuration2/DataConfiguration.java
index 909267b0..bb6af620 100644
--- a/src/main/java/org/apache/commons/configuration2/DataConfiguration.java
+++ b/src/main/java/org/apache/commons/configuration2/DataConfiguration.java
@@ -29,6 +29,7 @@ import java.util.Iterator;
import java.util.List;
import java.util.Locale;
import java.util.NoSuchElementException;
+import java.util.Objects;
import org.apache.commons.configuration2.convert.ConversionHandler;
import org.apache.commons.configuration2.convert.DefaultConversionHandler;
@@ -145,7 +146,7 @@ public class DataConfiguration extends AbstractConfiguration {
* @param configuration the wrapped configuration
*/
public DataConfiguration(final Configuration configuration) {
- this.configuration = configuration;
+ this.configuration = Objects.requireNonNull(configuration);
this.dataConversionHandler = new DataConversionHandler();
}
diff --git a/src/test/java/org/apache/commons/configuration2/TestDataConfiguration.java b/src/test/java/org/apache/commons/configuration2/TestDataConfiguration.java
index c3d3a84f..4c53bcfd 100644
--- a/src/test/java/org/apache/commons/configuration2/TestDataConfiguration.java
+++ b/src/test/java/org/apache/commons/configuration2/TestDataConfiguration.java
@@ -1977,9 +1977,12 @@ public class TestDataConfiguration {
final DataConfiguration conf = new DataConfiguration(baseconf);
assertTrue(conf.isEmpty());
-
baseconf.setProperty("foo", "bar");
-
assertFalse(conf.isEmpty());
}
+
+ @Test
+ public void testNullConfiguration() {
+ assertThrows(NullPointerException.class, () -> new DataConfiguration(null));
+ }
}