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-lang.git


The following commit(s) were added to refs/heads/master by this push:
     new b8d382039 [LANG-1804] Fix CharSet#getInstance returns null instead of 
EMPTY when input setStrs is null (#1530)
b8d382039 is described below

commit b8d382039a850dff10a90c9abfbbf62228fd8fd1
Author: IcoreE <[email protected]>
AuthorDate: Thu Dec 18 21:20:02 2025 +0800

    [LANG-1804] Fix CharSet#getInstance returns null instead of EMPTY when 
input setStrs is null (#1530)
    
    * Fix CharSet.getInstance(final String... setStrs) returns null instead of 
EMPTY when input setStrs is null
    
    * Remove unused import assertNull from CharSetTest
    
    Removed unused import statement for assertNull.
    
    ---------
    
    Co-authored-by: Gary Gregory <[email protected]>
---
 src/main/java/org/apache/commons/lang3/CharSet.java     | 2 +-
 src/test/java/org/apache/commons/lang3/CharSetTest.java | 5 +++--
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/apache/commons/lang3/CharSet.java 
b/src/main/java/org/apache/commons/lang3/CharSet.java
index 883cfa286..5853f8452 100644
--- a/src/main/java/org/apache/commons/lang3/CharSet.java
+++ b/src/main/java/org/apache/commons/lang3/CharSet.java
@@ -151,7 +151,7 @@ public class CharSet implements Serializable {
      */
     public static CharSet getInstance(final String... setStrs) {
         if (setStrs == null) {
-            return null;
+            return EMPTY;
         }
         if (setStrs.length == 1) {
             final CharSet common = COMMON.get(setStrs[0]);
diff --git a/src/test/java/org/apache/commons/lang3/CharSetTest.java 
b/src/test/java/org/apache/commons/lang3/CharSetTest.java
index 48e90c225..7fbed997a 100644
--- a/src/test/java/org/apache/commons/lang3/CharSetTest.java
+++ b/src/test/java/org/apache/commons/lang3/CharSetTest.java
@@ -21,7 +21,6 @@
 import static org.junit.jupiter.api.Assertions.assertEquals;
 import static org.junit.jupiter.api.Assertions.assertFalse;
 import static org.junit.jupiter.api.Assertions.assertNotEquals;
-import static org.junit.jupiter.api.Assertions.assertNull;
 import static org.junit.jupiter.api.Assertions.assertSame;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
@@ -390,6 +389,8 @@ void testEquals_Object() {
     @Test
     void testGetInstance() {
         assertSame(CharSet.EMPTY, CharSet.getInstance((String) null));
+        assertSame(CharSet.EMPTY, CharSet.getInstance((String[]) null));
+        assertSame(CharSet.EMPTY, CharSet.getInstance(null));
         assertSame(CharSet.EMPTY, CharSet.getInstance(""));
         assertSame(CharSet.ASCII_ALPHA, CharSet.getInstance("a-zA-Z"));
         assertSame(CharSet.ASCII_ALPHA, CharSet.getInstance("A-Za-z"));
@@ -400,7 +401,7 @@ void testGetInstance() {
 
     @Test
     void testGetInstance_Stringarray() {
-        assertNull(CharSet.getInstance((String[]) null));
+        assertEquals("[]", CharSet.getInstance((String[]) null).toString());
         assertEquals("[]", CharSet.getInstance().toString());
         assertEquals("[]", CharSet.getInstance(new String[] 
{null}).toString());
         assertEquals("[a-e]", CharSet.getInstance("a-e").toString());

Reply via email to