Mercurial > hg > release > icedtea-web-1.4
changeset 800:ae5d6515b833 default tip
Fixed download service
* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (fillInPartJars) for-each loop replaced by indexed loop to prevent ConcurrentModificationException
author | Jiri Vanek <jvanek@redhat.com> |
---|---|
date | Mon, 20 Jul 2015 13:01:11 +0200 |
parents | 050347a87858 |
children | |
files | ChangeLog NEWS netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java |
diffstat | 3 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog Tue Mar 03 09:46:35 2015 -0500 +++ b/ChangeLog Mon Jul 20 13:01:11 2015 +0200 @@ -1,3 +1,9 @@ +2015-07-20 Jiri Vanek <jvanek@redhat.com> + + Fixed download service + * netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (fillInPartJars) + for-each loop replaced by indexed loop to prevent ConcurrentModificationException + 2015-03-03 Jie Kang <jkang@redhat.com> Fix DeadLockTest reproducers
--- a/NEWS Tue Mar 03 09:46:35 2015 -0500 +++ b/NEWS Mon Jul 20 13:01:11 2015 +0200 @@ -9,6 +9,7 @@ CVE-XXXX-YYYY: http://www.cve.mitre.org/cgi-bin/cvename.cgi?name=XXXX-YYYY New in release 1.4.3 (YYYY-MM-DD): +* fixed DownloadService New in release 1.4.2 (2014-02-05): * Dialogs center on screen before becoming visible
--- a/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Tue Mar 03 09:46:35 2015 -0500 +++ b/netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java Mon Jul 20 13:01:11 2015 +0200 @@ -1225,8 +1225,9 @@ * in the same part). */ protected void fillInPartJars(List<JARDesc> jars) { - for (JARDesc desc : jars) { - String part = desc.getPart(); + //can not use iterator, will rise ConcurrentModificationException on jars.add(jar); + for (int x = 0 ; x< jars.size() ; x++) { + String part = jars.get(x).getPart(); // "available" field can be affected by two different threads // working in loadClass(String) synchronized (available) {