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

commit e61abab25a4814c165adf4f4958bd43da4fa1d11
Author: Gary Gregory <[email protected]>
AuthorDate: Wed Jun 25 09:41:13 2025 -0400

    Fix edge-case NullPointerException in
    org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast(JavaVersion)
    
    Fix edge-case NullPointerException in
    org.apache.commons.lang3.SystemUtils.isJavaVersionAtMost(JavaVersion)
---
 src/changes/changes.xml                                 | 4 +++-
 src/main/java/org/apache/commons/lang3/SystemUtils.java | 4 ++--
 2 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/changes/changes.xml b/src/changes/changes.xml
index 93b560588..9060a405a 100644
--- a/src/changes/changes.xml
+++ b/src/changes/changes.xml
@@ -95,7 +95,9 @@ The <action> type attribute can be add,update,fix,remove.
     <action                   type="fix" dev="ggregory" due-to="Ken 
Dombeck">Fix Javadoc code examples in DiffBuilder and ReflectionDiffBuilder 
#1400.</action>
     <action                   type="fix" dev="ggregory" due-to="Gary 
Gregory">Fix generics in org.apache.commons.lang3.stream.Streams.toArray(Class) 
signature.</action>
     <action issue="LANG-1727" type="fix" dev="ggregory" due-to="Elliotte Rusty 
Harold, Gary Gregory">EventListenerSupport doesn't document ordering of 
events.</action>
-    <action                   type="fix" dev="ggregory" due-to="Gary 
Gregory">Fix NullPointerException in 
org.apache.commons.lang3.SystemUtils.IS_OS_ANDROID.</action>
+    <action                   type="fix" dev="ggregory" due-to="Gary 
Gregory">Fix edge-case NullPointerException in 
org.apache.commons.lang3.SystemUtils.IS_OS_ANDROID.</action>
+    <action                   type="fix" dev="ggregory" due-to="Gary 
Gregory">Fix edge-case NullPointerException in 
org.apache.commons.lang3.SystemUtils.isJavaVersionAtLeast(JavaVersion).</action>
+    <action                   type="fix" dev="ggregory" due-to="Gary 
Gregory">Fix edge-case NullPointerException in 
org.apache.commons.lang3.SystemUtils.isJavaVersionAtMost(JavaVersion).</action>
     <!-- ADD -->
     <action                   type="add" dev="ggregory" due-to="Gary 
Gregory">Add Strings and refactor StringUtils.</action>
     <action issue="LANG-1747" type="add" dev="ggregory" due-to="Oliver B. 
Fischer, Gary Gregory">Add StopWatch.run([Failable]Runnable) and 
get([Failable]Supplier).</action>
diff --git a/src/main/java/org/apache/commons/lang3/SystemUtils.java 
b/src/main/java/org/apache/commons/lang3/SystemUtils.java
index dec918a8c..e39a1d488 100644
--- a/src/main/java/org/apache/commons/lang3/SystemUtils.java
+++ b/src/main/java/org/apache/commons/lang3/SystemUtils.java
@@ -2281,7 +2281,7 @@ public static boolean isJavaAwtHeadless() {
      * @return {@code true} if the actual version is equal or greater than the 
required version
      */
     public static boolean isJavaVersionAtLeast(final JavaVersion 
requiredVersion) {
-        return JAVA_SPECIFICATION_VERSION_AS_ENUM.atLeast(requiredVersion);
+        return JAVA_SPECIFICATION_VERSION_AS_ENUM != null && 
JAVA_SPECIFICATION_VERSION_AS_ENUM.atLeast(requiredVersion);
     }
 
     /**
@@ -2295,7 +2295,7 @@ public static boolean isJavaVersionAtLeast(final 
JavaVersion requiredVersion) {
      * @since 3.9
      */
     public static boolean isJavaVersionAtMost(final JavaVersion 
requiredVersion) {
-        return JAVA_SPECIFICATION_VERSION_AS_ENUM.atMost(requiredVersion);
+        return JAVA_SPECIFICATION_VERSION_AS_ENUM != null && 
JAVA_SPECIFICATION_VERSION_AS_ENUM.atMost(requiredVersion);
     }
 
     /**

Reply via email to