aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--NEWS1
-rw-r--r--netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java14
3 files changed, 11 insertions, 13 deletions
diff --git a/ChangeLog b/ChangeLog
index 8974fc6..d82aa3c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2012-10-05 Omair Majid <[email protected]>
+
+ PR1145
+ * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
+ (getAccessControlContextForClassLoading): Do not catch
+ ClassCircularityError.
+ (findLoadedClassAll): Call findLoadedClass without any special
+ permissions.
+
2012-10-03 Jana Fabrikova <[email protected]>
* tests/reproducers/simple/JSToJGet:
diff --git a/NEWS b/NEWS
index 82172e1..de0c4c5 100644
--- a/NEWS
+++ b/NEWS
@@ -17,6 +17,7 @@ New in release 1.4 (2012-XX-XX):
* Common
- PR1049: Extension jnlp's signed jar with the content of only META-INF/* is considered
- PR955: regression: SweetHome3D fails to run
+ - PR1145: IcedTea-Web can cause ClassCircularityError
- PR1161: X509VariableTrustManager does not work correctly with OpenJDK7
New in release 1.3 (2012-XX-XX):
diff --git a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
index 7e28e02..523d9bd 100644
--- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
+++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
@@ -1494,17 +1494,7 @@ public class JNLPClassLoader extends URLClassLoader {
Class result = null;
if (loaders[i] == this) {
- final String fName = name;
- try {
- result = AccessController.doPrivileged(
- new PrivilegedExceptionAction<Class<?>>() {
- public Class<?> run() {
- return JNLPClassLoader.super.findLoadedClass(fName);
- }
- }, getAccessControlContextForClassLoading());
- } catch (PrivilegedActionException pae) {
- result = null;
- }
+ result = JNLPClassLoader.super.findLoadedClass(name);
} else {
result = loaders[i].findLoadedClassAll(name);
}
@@ -2154,8 +2144,6 @@ public class JNLPClassLoader extends URLClassLoader {
return context; // If context already has all permissions, don't bother
} catch (AccessControlException ace) {
// continue below
- } catch (ClassCircularityError cce) {
- // continue below
}
// Since this is for class-loading, technically any class from one jar