This is an automated email from the ASF dual-hosted git repository.

markt-asf pushed a commit to branch 11.0.x
in repository https://gitbox.apache.org/repos/asf/tomcat.git


The following commit(s) were added to refs/heads/11.0.x by this push:
     new 774fb14dd4 Further NPE protection
774fb14dd4 is described below

commit 774fb14dd453e36a10a43119ffacd782b1ee144c
Author: Mark Thomas <[email protected]>
AuthorDate: Wed May 27 14:15:14 2026 +0100

    Further NPE protection
---
 .../users/DataSourceUserDatabaseFactory.java       | 31 ++++++++++------------
 .../catalina/users/MemoryUserDatabaseFactory.java  |  2 +-
 2 files changed, 15 insertions(+), 18 deletions(-)

diff --git a/java/org/apache/catalina/users/DataSourceUserDatabaseFactory.java 
b/java/org/apache/catalina/users/DataSourceUserDatabaseFactory.java
index 72a0ffc22e..c88ac8d2bc 100644
--- a/java/org/apache/catalina/users/DataSourceUserDatabaseFactory.java
+++ b/java/org/apache/catalina/users/DataSourceUserDatabaseFactory.java
@@ -83,7 +83,7 @@ public class DataSourceUserDatabaseFactory implements 
ObjectFactory {
         DataSource dataSource = null;
         String dataSourceName = null;
         RefAddr ra = ref.get("dataSourceName");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             dataSourceName = ra.getContent().toString();
             dataSource = (DataSource) nameCtx.lookup(dataSourceName);
         }
@@ -94,75 +94,72 @@ public class DataSourceUserDatabaseFactory implements 
ObjectFactory {
         database.setDataSourceName(dataSourceName);
 
         ra = ref.get("readonly");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             
database.setReadonly(Boolean.parseBoolean(ra.getContent().toString()));
         }
 
         ra = ref.get("userTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserTable(ra.getContent().toString());
         }
 
         ra = ref.get("groupTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setGroupTable(ra.getContent().toString());
         }
 
         ra = ref.get("roleTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setRoleTable(ra.getContent().toString());
         }
 
         ra = ref.get("userRoleTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserRoleTable(ra.getContent().toString());
         }
 
         ra = ref.get("userGroupTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserGroupTable(ra.getContent().toString());
         }
 
         ra = ref.get("groupRoleTable");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setGroupRoleTable(ra.getContent().toString());
         }
 
         ra = ref.get("roleNameCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setRoleNameCol(ra.getContent().toString());
         }
 
         ra = ref.get("roleAndGroupDescriptionCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setRoleAndGroupDescriptionCol(ra.getContent().toString());
         }
 
         ra = ref.get("groupNameCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setGroupNameCol(ra.getContent().toString());
         }
 
         ra = ref.get("userCredCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserCredCol(ra.getContent().toString());
         }
 
         ra = ref.get("userFullNameCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserFullNameCol(ra.getContent().toString());
         }
 
         ra = ref.get("userNameCol");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setUserNameCol(ra.getContent().toString());
         }
 
         // Return the configured database instance
         database.open();
         return database;
-
     }
-
-
 }
diff --git a/java/org/apache/catalina/users/MemoryUserDatabaseFactory.java 
b/java/org/apache/catalina/users/MemoryUserDatabaseFactory.java
index 07e565992e..3806dce72c 100644
--- a/java/org/apache/catalina/users/MemoryUserDatabaseFactory.java
+++ b/java/org/apache/catalina/users/MemoryUserDatabaseFactory.java
@@ -86,7 +86,7 @@ public class MemoryUserDatabaseFactory implements 
ObjectFactory {
         // RefAddr values associated with this Reference
         MemoryUserDatabase database = new MemoryUserDatabase(name.toString());
         RefAddr ra = ref.get("pathname");
-        if (ra != null) {
+        if (ra != null && ra.getContent() != null) {
             database.setPathname(ra.getContent().toString());
         }
 


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to