/hg/release/icedtea-web-1.4: Fixed download service

jvanek at icedtea.classpath.org jvanek at icedtea.classpath.org
Mon Jul 20 12:20:56 UTC 2015


changeset ae5d6515b833 in /hg/release/icedtea-web-1.4
details: http://icedtea.classpath.org/hg/release/icedtea-web-1.4?cmd=changeset;node=ae5d6515b833
author: Jiri Vanek <jvanek at redhat.com>
date: Mon Jul 20 13:01:11 2015 +0200

	Fixed download service
	* netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java: (fillInPartJars) for-each loop replaced by indexed loop to prevent ConcurrentModificationException


diffstat:

 ChangeLog                                              |  6 ++++++
 NEWS                                                   |  1 +
 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java |  5 +++--
 3 files changed, 10 insertions(+), 2 deletions(-)

diffs (39 lines):

diff -r 050347a87858 -r ae5d6515b833 ChangeLog
--- 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 at 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 at redhat.com>
 
 	Fix DeadLockTest reproducers
diff -r 050347a87858 -r ae5d6515b833 NEWS
--- 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
diff -r 050347a87858 -r ae5d6515b833 netx/net/sourceforge/jnlp/runtime/JNLPClassLoader.java
--- 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) {


More information about the distro-pkg-dev mailing list