improved fix for JAMES-1815, also fixes potential NPE

Project: http://git-wip-us.apache.org/repos/asf/james-project/repo
Commit: http://git-wip-us.apache.org/repos/asf/james-project/commit/b0d973c0
Tree: http://git-wip-us.apache.org/repos/asf/james-project/tree/b0d973c0
Diff: http://git-wip-us.apache.org/repos/asf/james-project/diff/b0d973c0

Branch: refs/heads/master
Commit: b0d973c0d86395789e2f2036750d2f8bfaa5fdc3
Parents: cbd2bdf
Author: Tobias Fleig <[email protected]>
Authored: Tue Aug 9 12:31:47 2016 +0200
Committer: Tobias Fleig <[email protected]>
Committed: Tue Aug 9 12:31:47 2016 +0200

----------------------------------------------------------------------
 .../apache/james/domainlist/lib/AbstractDomainList.java | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/james-project/blob/b0d973c0/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
----------------------------------------------------------------------
diff --git 
a/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
 
b/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
index a96093f..c84e836 100644
--- 
a/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
+++ 
b/server/data/data-library/src/main/java/org/apache/james/domainlist/lib/AbstractDomainList.java
@@ -119,7 +119,7 @@ public abstract class AbstractDomainList implements 
DomainList, LogEnabled, Conf
         if (domains != null) {
 
             // create mutable copy, some subclasses return ImmutableList
-            domains = new ArrayList<String>(domains);
+            ArrayList<String> mutableDomains = new ArrayList<String>(domains);
 
             String hostName;
             try {
@@ -131,20 +131,22 @@ public abstract class AbstractDomainList implements 
DomainList, LogEnabled, Conf
             getLogger().info("Local host is: " + hostName);
 
             if (autoDetect && (!hostName.equals("localhost"))) {
-                domains.add(hostName.toLowerCase(Locale.US));
+                mutableDomains.add(hostName.toLowerCase(Locale.US));
             }
 
             if (autoDetectIP) {
-                domains.addAll(getDomainsIP(domains, dns, getLogger()));
+                mutableDomains.addAll(getDomainsIP(mutableDomains, dns, 
getLogger()));
             }
 
             if (getLogger().isInfoEnabled()) {
-                for (String domain : domains) {
+                for (String domain : mutableDomains) {
                     getLogger().debug("Handling mail for: " + domain);
                 }
             }
+
+            return ImmutableList.copyOf(mutableDomains);
         }
-        return ImmutableList.copyOf(domains);
+        return ImmutableList.of();// empty list
     }
 
     /**


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

Reply via email to