8062807: Exporting RMI objects fails when run under restrictive SecurityManager
Reviewed-by: dfuchs, skoivu, igerasim, msheppar
--- 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() {