libbluray | branch: master | hpi1 <[email protected]> | Mon Mar 23 12:48:25 2015 +0200| [6dd795f663b1d93421ee4bf0151adaabff75a037] | committer: hpi1
Ixc: add doPrivileged to method resolving > http://git.videolan.org/gitweb.cgi/libbluray.git/?a=commit;h=6dd795f663b1d93421ee4bf0151adaabff75a037 --- .../bdj/java/org/videolan/IxcRegistryImpl.java | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/libbluray/bdj/java/org/videolan/IxcRegistryImpl.java b/src/libbluray/bdj/java/org/videolan/IxcRegistryImpl.java index 625fd89..a9fe28d 100644 --- a/src/libbluray/bdj/java/org/videolan/IxcRegistryImpl.java +++ b/src/libbluray/bdj/java/org/videolan/IxcRegistryImpl.java @@ -30,6 +30,9 @@ import java.rmi.NotBoundException; import java.rmi.AlreadyBoundException; import java.rmi.Remote; +import java.security.AccessController; +import java.security.PrivilegedAction; + import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; @@ -267,7 +270,7 @@ public class IxcRegistryImpl { boolean finished = false; Object retInCaller = null; - public RemoteMethod(Method method, BDJXletContext context, Object[] args) + public RemoteMethod(final Method method, BDJXletContext context, Object[] args) throws RemoteException { callerContext = BDJXletContext.getCurrentContext(); @@ -278,7 +281,15 @@ public class IxcRegistryImpl { logger.error("callee context is null"); } calleeContext = context; - methodInCallee = findMethodInCallee(method); + + //methodInCallee = findMethodInCallee(method); + methodInCallee = (Method)AccessController.doPrivileged( + new PrivilegedAction() { + public Object run() { + return findMethodInCallee(method); + } + }); + if (null != args) { argsInCallee = new Object[args.length]; for (int i = 0; i < args.length; i++) { _______________________________________________ libbluray-devel mailing list [email protected] https://mailman.videolan.org/listinfo/libbluray-devel
