diff options
author | Omair Majid <[email protected]> | 2012-06-28 14:53:07 -0400 |
---|---|---|
committer | Omair Majid <[email protected]> | 2012-06-28 14:53:07 -0400 |
commit | 16f2e7d40c05927c5d911380a24d11dec4f31263 (patch) | |
tree | b93ac79d7ad4225bd28c6df06a93074b62ca774b /ChangeLog | |
parent | 40f30149bcd80661a1df5ec0570d1b7c0124c3c3 (diff) |
Fix problem in resolving classes
The bug manifests when the following sequence of steps happen:
1. An applet with both a codebase and a jar (archive) is loaded
2. A class Foo is loaded using the codebase classloader
3. The Foo class tries to load a class Bar that is specified in the jar
archive. The Bar class is not found.
The following applet reproduces the problem:
http://javadjvu.foxtrottechnologies.com/cgi-bin/djvuapplet.pl/examples/deer.djvu?zoom=page
The fix addresses the problem by ensuring that the codebase classloader
asks the classloader that knows about the jar archive to resolve
classes too.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 10 |
1 files changed, 10 insertions, 0 deletions
@@ -1,3 +1,13 @@ +2012-06-28 Omair Majid <[email protected]> + + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java + (findClass): Invoke CodeBaseClassLoader.findClass with a flag to avoid + infinite recursion. + (CodeBaseClassLoader.findClass(String)): Delegate to ... + (CodeBaseClassLoader.findClass(String,boolean)): New method. + * tests/netx/unit/net/sourceforge/jnlp/runtime/CodeBaseClassLoaderTest.java + (testParentClassLoaderIsAskedForClasses): New method. + 2012-06-28 Jiri Vanek <[email protected]> Correctly backup all log files re-writable by emma during code-coverage |