Fix for SSHD-668

Project: http://git-wip-us.apache.org/repos/asf/mina-sshd/repo
Commit: http://git-wip-us.apache.org/repos/asf/mina-sshd/commit/fbe2f4fa
Tree: http://git-wip-us.apache.org/repos/asf/mina-sshd/tree/fbe2f4fa
Diff: http://git-wip-us.apache.org/repos/asf/mina-sshd/diff/fbe2f4fa

Branch: refs/heads/master
Commit: fbe2f4fa9f67b6ba967126f46ff5ea80075ed96a
Parents: 6189fff
Author: Guillaume Nodet <gno...@apache.org>
Authored: Tue Feb 14 15:48:34 2017 +0100
Committer: Guillaume Nodet <gno...@apache.org>
Committed: Tue Feb 14 15:48:34 2017 +0100

----------------------------------------------------------------------
 .../org/apache/sshd/common/util/threads/ThreadUtils.java     | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mina-sshd/blob/fbe2f4fa/sshd-core/src/main/java/org/apache/sshd/common/util/threads/ThreadUtils.java
----------------------------------------------------------------------
diff --git 
a/sshd-core/src/main/java/org/apache/sshd/common/util/threads/ThreadUtils.java 
b/sshd-core/src/main/java/org/apache/sshd/common/util/threads/ThreadUtils.java
index d55469e..803e87e 100644
--- 
a/sshd-core/src/main/java/org/apache/sshd/common/util/threads/ThreadUtils.java
+++ 
b/sshd-core/src/main/java/org/apache/sshd/common/util/threads/ThreadUtils.java
@@ -221,8 +221,12 @@ public final class ThreadUtils {
             Thread t;
             try {
                 // see SSHD-668
-                t = 
AccessController.doPrivileged((PrivilegedExceptionAction<Thread>) () ->
-                        new Thread(group, r, namePrefix + 
threadNumber.getAndIncrement(), 0));
+                if (System.getSecurityManager() != null) {
+                    t = 
AccessController.doPrivileged((PrivilegedExceptionAction<Thread>) () ->
+                            new Thread(group, r, namePrefix + 
threadNumber.getAndIncrement(), 0));
+                } else {
+                    t = new Thread(group, r, namePrefix + 
threadNumber.getAndIncrement(), 0);
+                }
             } catch (PrivilegedActionException e) {
                 Exception err = e.getException();
                 if (err instanceof RuntimeException) {

Reply via email to