8062807: Exporting RMI objects fails when run under restrictive SecurityManager
authorsmarks
Tue, 18 Nov 2014 17:02:50 -0800
changeset 28557 ce28716935ce
parent 28556 cebfefd140cc
child 28558 85050a596713
child 28993 7565a4e0f172
8062807: Exporting RMI objects fails when run under restrictive SecurityManager Reviewed-by: dfuchs, skoivu, igerasim, msheppar
jdk/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java
--- a/jdk/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java	Wed Nov 05 12:46:39 2014 +0400
+++ b/jdk/src/java.rmi/share/classes/sun/rmi/transport/tcp/TCPTransport.java	Tue Nov 18 17:02:50 2014 -0800
@@ -668,19 +668,19 @@
         }
 
         public void run() {
-            AccessController.doPrivileged((PrivilegedAction<Void>)() -> {
-                    Thread t = Thread.currentThread();
-                    String name = t.getName();
-                    try {
-                        t.setName("RMI TCP Connection(" +
-                                  connectionCount.incrementAndGet() +
-                                  ")-" + remoteHost);
-                        run0();
-                    } finally {
-                        t.setName(name);
-                    }
+            Thread t = Thread.currentThread();
+            String name = t.getName();
+            try {
+                t.setName("RMI TCP Connection(" +
+                          connectionCount.incrementAndGet() +
+                          ")-" + remoteHost);
+                AccessController.doPrivileged((PrivilegedAction<Void>)() -> {
+                    run0();
                     return null;
                 }, NOPERMS_ACC);
+            } finally {
+                t.setName(name);
+            }
         }
 
         private void run0() {