diff options
author | Vlastimil Babka <caster@gentoo.org> | 2012-11-14 21:59:31 +0000 |
---|---|---|
committer | Vlastimil Babka <caster@gentoo.org> | 2012-11-14 21:59:31 +0000 |
commit | 30b28d17ca62789b0be3d3ea36ba46a040dac93c (patch) | |
tree | c340ff2bc39adf211abe0c767538aa7e3ea32051 /dev-java/icedtea-web | |
parent | Bump sys-fs/zfs to 0.6.0_rc12 (diff) | |
download | historical-30b28d17ca62789b0be3d3ea36ba46a040dac93c.tar.gz historical-30b28d17ca62789b0be3d3ea36ba46a040dac93c.tar.bz2 historical-30b28d17ca62789b0be3d3ea36ba46a040dac93c.zip |
Version bump, security bug #442478. Install with -j1 for bug #440906.
Package-Manager: portage-2.2.0_alpha141/cvs/Linux x86_64
Manifest-Sign-Key: 0x4E61DE84
Diffstat (limited to 'dev-java/icedtea-web')
-rw-r--r-- | dev-java/icedtea-web/ChangeLog | 11 | ||||
-rw-r--r-- | dev-java/icedtea-web/Manifest | 22 | ||||
-rw-r--r-- | dev-java/icedtea-web/files/fix-plugin-in-icedtea-7.patch | 321 | ||||
-rw-r--r-- | dev-java/icedtea-web/files/icedtea-web-1.2.1-memcpy.patch | 14 | ||||
-rw-r--r-- | dev-java/icedtea-web/icedtea-web-1.3.1-r7.ebuild (renamed from dev-java/icedtea-web/icedtea-web-1.2.1-r8.ebuild) | 85 | ||||
-rw-r--r-- | dev-java/icedtea-web/icedtea-web-1.3.1.ebuild (renamed from dev-java/icedtea-web/icedtea-web-1.2.1-r1.ebuild) | 85 |
6 files changed, 114 insertions, 424 deletions
diff --git a/dev-java/icedtea-web/ChangeLog b/dev-java/icedtea-web/ChangeLog index 5be82aa96875..8ed01dba7126 100644 --- a/dev-java/icedtea-web/ChangeLog +++ b/dev-java/icedtea-web/ChangeLog @@ -1,6 +1,15 @@ # ChangeLog for dev-java/icedtea-web # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/ChangeLog,v 1.29 2012/09/25 14:02:46 sera Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/ChangeLog,v 1.30 2012/11/14 21:59:24 caster Exp $ + +*icedtea-web-1.3.1-r7 (14 Nov 2012) +*icedtea-web-1.3.1 (14 Nov 2012) + + 14 Nov 2012; Vlastimil Babka <caster@gentoo.org> + -icedtea-web-1.2.1-r1.ebuild, -icedtea-web-1.2.1-r8.ebuild, + -files/icedtea-web-1.2.1-memcpy.patch, +icedtea-web-1.3.1.ebuild, + +icedtea-web-1.3.1-r7.ebuild, -files/fix-plugin-in-icedtea-7.patch: + Version bump, security bug #442478. Install with -j1 for bug #440906. 25 Sep 2012; Ralph Sennhauser <sera@gentoo.org> -icedtea-web-1.2.ebuild, -icedtea-web-1.2-r7.ebuild, -icedtea-web-1.2.1.ebuild, diff --git a/dev-java/icedtea-web/Manifest b/dev-java/icedtea-web/Manifest index faab73bd494c..07ccacff6859 100644 --- a/dev-java/icedtea-web/Manifest +++ b/dev-java/icedtea-web/Manifest @@ -1,25 +1,19 @@ -----BEGIN PGP SIGNED MESSAGE----- -Hash: SHA256 +Hash: SHA512 AUX 0002-Respect-LDFLAGS.patch 352 SHA256 3e4660e84420e2ae85b00eef40e7e20c0df2c6965fda6827ab025e8167e8f866 SHA512 83e431505808e5e8b553d17b74590eaf232f69ccc7d0c9c3753af6995105a08b4cf8cc844295edb977e5a6456c5fe3b53ba0fa565607c99cc82ac025169dd16f WHIRLPOOL ef0f6ccdd1f879940351dbe0ece62c2f1ecc333df06328f7d12e07885579255f973689545e32ec7db679cc1ec516860f2b7acb52070dc4714c2a3b78b9eeae87 -AUX fix-plugin-in-icedtea-7.patch 13618 SHA256 0dea03343ecea371004baa508ff20e87fb020652cdb47a7bef80deb1ba17c653 SHA512 bb52dd8f0d82fdca3d33635e28715db3b62a0dd161bc88e856a44b656d85d9d4bf43f9d4e8185c90c78d775868f7274f1068f856a871a233322dc72e94c92dd8 WHIRLPOOL cf85d1b09ce2426ed187dc3ef22b6499ffedf34e40a13d1f31b8b1f8dba2433d1ef2e63c096e58ddbb859a429606818cd0a8a8f8388bc75edd9ed94524634523 -AUX icedtea-web-1.2.1-memcpy.patch 645 SHA256 e8067b2d5ceba4f151702beaafab494a865f5455ef97d130605c4d83329d3307 SHA512 d7750519de39df9acd7c999e659ec9c92209266d792f339c1f9226b00f05c6725257e501c7a9e0bd98ed5639b0cdbc1dfd2869c8d1c369b818d3b3d127a73384 WHIRLPOOL 413b1f209a6e31260f410978d908d03580a9239443b76a0ef76134c60263dcbc466324327158d790c32bbb9c256f85d2cf0d3a87489847c929a8b3b9634a8f10 -DIST icedtea-web-1.2.1.tar.gz 879692 SHA256 134efcd429086a643ba03ec6e4da991527c3e5dfcd6ed6680a83824ad3f0cfd6 SHA512 0f7cb56dc252c8f1196a6af841e74e482b9d5b5a1b1ff1b1be315ece1f180ca09a5017e76993d81824d864ebcebf4fe8369d09322fb2fee1c88cb7f5031717b8 WHIRLPOOL 17fb7b3b66b2b42baca1f278a786682b3eb1191a054bc909605f85c641ffe1d998a677ad6055dfac9f996792404aa19987d4c77a4dcc774183e5a17ee7aad352 +DIST icedtea-web-1.3.1.tar.gz 995777 SHA256 20c7fd1eef6c79cbc6478bb01236a3eb2f0af6184eaed24baca59a3c37eafb56 SHA512 9e014ec1eb93868aeb5409aa79a6adcb07dbcab37f881693d4c8f9b755ed97fee1a53abc852a0483d3966fe4ea4fa0df80935b89db8703fcde8df74f04169dcf WHIRLPOOL d0a91f8b441137a92fb8e76774c5c7c43568f171084e48ef390765a7732d490ea2450c4d5338d6485745665c6228b8dffa06986b8b5441a8b117435ec9d34729 DIST icedtea-web-1.3.tar.gz 987785 SHA256 d46ec10700732cea103da2aae64ff01e717cb1281b83e1797ce48cc53280b49f SHA512 21cb4602a998e65994498e56f368f42c06703e07f2b33cbe9d2a084befe073f7c9301a9b076ccaac5de18bb384907b8efc1013315ca2cd90493caf18059f4932 WHIRLPOOL 97a448088d8838fd2272cafa159fd43f45b7404f2afabd5cd12d7bcd97418a012ff028d6015293878c913ee1d907585ce2c22a5a7e8c8ba3619bb6cb30c63370 -EBUILD icedtea-web-1.2.1-r1.ebuild 3243 SHA256 6a24461777b32d699bee6e7a538704a6b3d7597bc735d975102a566a54600311 SHA512 1027c27f8e4736a2ec14058a29132a69c214f4d0ac07ba835166808a34a669360d505274826fc987ce82ef33949165d3a2a14b8f1b3a5e7f4e8eef54830623dc WHIRLPOOL e1370722c0094b1f117771e37319d540bacbc66a7fcf72421620db0cbf3c5afbcfcb3504cc4ac5f48b3190d303777bfe6662da3ced00f498c3782a917cb3d39d -EBUILD icedtea-web-1.2.1-r8.ebuild 3231 SHA256 3fdc77b63daf47bf3c0f748f1e8d32c4f09ff3348fecfcb0b5de541be17d5bec SHA512 78a8397bf120d6f33580f299534e9c8b7cba0173d199fc77c1aac32abfdc7f09a66758461a0bfb797c116576b194031f7db4da873a3edd89111fd8df1022e9cb WHIRLPOOL 8b90023a2d5c588712752ce2e3fb61e3f7b44d876e186e3dd2d54fd7354df6a9556f0a6f7ed52fcdcad567d0cfb93f72a14f6e20e469f7037e9a660c9405370a EBUILD icedtea-web-1.3-r7.ebuild 3323 SHA256 5739fdacf96ddc0650bcd903d90ea446a2bbc139a72671ec40edf7375e6b6b74 SHA512 52a1ba2119f0bebdf28b77fab6d06d3ea797ab39358d81abbc240ac747635adcdd837e9d21e61745e2db5e5288113fa43ca35a0bb1b2f591b163c56d9eaba52b WHIRLPOOL ab3df8ce5acf034b5a6ddf868566eb20676111b2e7b0d447fc6ebd5616716dab0183c122487a6beb86fed3e880585b333942dab4f5ea4a112450c22c3e178f40 +EBUILD icedtea-web-1.3.1-r7.ebuild 3359 SHA256 b22758b019625f3c1de779f925a7223328c90d92d044e3c6175699bc93cece74 SHA512 dbbbf5cf4c41152c5e0cd55f6288d1a8df37247437fbce728308018c7f9175d6960b93670b0f15f0c59dec47f0f86c32fc324c6c371866d59cdbed9005b4340a WHIRLPOOL aeb545ef6da54101f84f9ac3703d80395f73f2199f40ccac7c4ebdb476a6116c0993b74b8418fe8a096aaac3ce1a1d2b723a13f6df471413ad3375624502d4c3 +EBUILD icedtea-web-1.3.1.ebuild 3368 SHA256 b11459647cdb9f54895f01cfbf44ae7212e4850aab72636cc32092684970d692 SHA512 4fcdc911bf4f4b2a1f96afc922a13afa0de6a2a834ae3bfa866d1472963caf37c5672f7b6a1b3c7c45a873d5ee37f3bb3f837c1f197eca042697fb2f4b76f5eb WHIRLPOOL 4694f1e091431099870f7b02fe29acfdfba22911679f5bcc4629fe6ed677b90f3991b78cd295af33d008731030b439801e35bc26dd97b5b5db0f802ab3bf8369 EBUILD icedtea-web-1.3.ebuild 3332 SHA256 9ed839caac3dec53b1c325d182ffd1385f4e860cce36f684c5990af906e06c35 SHA512 dfc3746bed25d7dbfb2b9ae8e73bafa4ca5a6d4023aae6c96b43b8c2794f82a47eef187cf00307ace3dc25c745f41ff632dc3d436e666968bc2917c50b0e05c1 WHIRLPOOL a5284f53f184b3cd9a32039f0d665c81b16e88c937b580dcdc2d223742309e49b3870b07c1a8f0d0a8311d60baf8831635e7707c3655445143b422662bcba295 -MISC ChangeLog 6168 SHA256 a3c5f77741a1dfa9cfe8f56a56c05b15d5ed4d95eea69bc8ac19fd65c4641ea9 SHA512 e62b839b4e312f28f33f719343cba5abb69e5ce78e038d59c19e4bb1d74505d128d4b8f3986fd80f1145c6aa5e7dea649f757f10f31e946736e866cdf748d32f WHIRLPOOL b67516f229d781baf028939c5d9cde6ee944b737203694acbf778663ae741471c8295dab2ccda881c8762eac0d05275a8eeb52bb10c539ddfa88bca15ac2a908 +MISC ChangeLog 6564 SHA256 0c405c9531242f48c5829886b690aca24f5237d947c61a605741af2e2f9aabe8 SHA512 4c3f6a7a584d809cb78605bb5dd681d49329a26b64383cffa86cf6973ecec0ec00455cb25fb6b6916bf7d12fb186053b7da437e5819f77e97cba26cedb984dcd WHIRLPOOL c6de261c65431b58cc82e33258bc6ac6476e4685e15e5701606647581785867b5fd714104de4a182340140071d6619101e067062304c056d9d13f740c3ee9fa1 MISC metadata.xml 931 SHA256 3a55d9a9e1a1324da313935d171a88019eef1f9cdf8f3ed8d07c654ae66a0110 SHA512 292cfcc12fc407d59a92ec3f71c9782c9eb65c18786207cf2d8bfdc7c2341ca498cbf9a29a1297690d8d14589b2a64f4b5ae3c31e66d463c8ce1063f54d8896b WHIRLPOOL 1bec28c08ee435fffa1ae7acd5198b218c3aae91ab3e838853798c3189bddbe42afd0dc0439e82ca182c5444eb119452b637b5649348d29904f64932be316f5b -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (GNU/Linux) -iQEcBAEBCAAGBQJQYbmWAAoJEIUJ+svaV163HhEH/iMdlMdYXx19cnGkJtsWdaBQ -rAgNuiZOPumm4r2VY+5hPzMlVwFGYY2+rZ04EvB5rAIFkn0UnjxfjR7c/oYmpqJo -wGtvzySU9Dpiw1/zDtup1VXL5yMhubpYBlt5a4ESNe6L1I67OlNP0F2iXUZuDtoc -In/rDMItVeEf60CH+UzS1eZmoIf2uGw9Y3/ooyCml7JQqrXake7VfcOvNWia+opb -PxO8A8OvBNfkDe0Y+/hNcWy1iogMJcVKgcCU9STf1t1ZZKmPp1qmh0tErV+ye06M -CD+UBqNggsqGuQ0consYlH4fu7cUGMIDLmGZ8JGIdNyUY9MFN0ljT/WgcvfT8T0= -=5Sj6 +iEYEAREKAAYFAlCkFEIACgkQtbrAj05h3oQcuACfZY9CcqwE5MV269mu25WpOFT9 +tLIAnimQlJQ7i2VoBRTkM9AAxjK6tiop +=imVB -----END PGP SIGNATURE----- diff --git a/dev-java/icedtea-web/files/fix-plugin-in-icedtea-7.patch b/dev-java/icedtea-web/files/fix-plugin-in-icedtea-7.patch deleted file mode 100644 index 4f65145913c9..000000000000 --- a/dev-java/icedtea-web/files/fix-plugin-in-icedtea-7.patch +++ /dev/null @@ -1,321 +0,0 @@ - -# HG changeset patch -# User Denis Lila <dlila@redhat.com> -# Date 1304110685 14400 -# Node ID 77640d74d21c2303b64bbc05583a3850db564894 -# Parent f0647c9385358b4fc3fe747ba7b95b9117c2f681 -Fix appcontext related plugin bugs. - -diff -r f0647c938535 -r 77640d74d21c netx/net/sourceforge/jnlp/Launcher.java ---- a/netx/net/sourceforge/jnlp/Launcher.java Sat Jan 07 02:48:05 2012 -0500 -+++ b/netx/net/sourceforge/jnlp/Launcher.java Fri Apr 29 16:58:05 2011 -0400 -@@ -33,7 +33,6 @@ - - import net.sourceforge.jnlp.cache.CacheUtil; - import net.sourceforge.jnlp.cache.UpdatePolicy; --import net.sourceforge.jnlp.runtime.AppThreadGroup; - import net.sourceforge.jnlp.runtime.AppletInstance; - import net.sourceforge.jnlp.runtime.ApplicationInstance; - import net.sourceforge.jnlp.runtime.JNLPClassLoader; -@@ -707,7 +706,7 @@ - throw new ClassNotFoundException("Can't do a codebase look up and there are no jars. Failing sooner rather than later"); - } - -- AppThreadGroup group = (AppThreadGroup) Thread.currentThread().getThreadGroup(); -+ ThreadGroup group = Thread.currentThread().getThreadGroup(); - - String appletName = file.getApplet().getMainClass(); - -@@ -723,7 +722,6 @@ - else - appletInstance = new AppletInstance(file, group, loader, applet, cont); - -- group.setApplication(appletInstance); - loader.setApplication(appletInstance); - - setContextClassLoaderForAllThreads(appletInstance.getThreadGroup(), appletInstance.getClassLoader()); -@@ -770,10 +768,9 @@ - protected ApplicationInstance createApplication(JNLPFile file) throws LaunchException { - try { - JNLPClassLoader loader = JNLPClassLoader.getInstance(file, updatePolicy); -- AppThreadGroup group = (AppThreadGroup) Thread.currentThread().getThreadGroup(); -+ ThreadGroup group = Thread.currentThread().getThreadGroup(); - - ApplicationInstance app = new ApplicationInstance(file, group, loader); -- group.setApplication(app); - loader.setApplication(app); - - return app; -@@ -789,16 +786,16 @@ - * then this method simply returns the existing ThreadGroup. The applet - * ThreadGroup has to be created at an earlier point in the applet code. - */ -- protected AppThreadGroup createThreadGroup(JNLPFile file) { -- AppThreadGroup appThreadGroup = null; -+ protected ThreadGroup createThreadGroup(JNLPFile file) { -+ ThreadGroup tg = null; - - if (file instanceof PluginBridge) { -- appThreadGroup = (AppThreadGroup) Thread.currentThread().getThreadGroup(); -+ tg = Thread.currentThread().getThreadGroup(); - } else { -- appThreadGroup = new AppThreadGroup(mainGroup, file.getTitle()); -+ tg = new ThreadGroup(mainGroup, file.getTitle()); - } - -- return appThreadGroup; -+ return tg; - } - - /** -diff -r f0647c938535 -r 77640d74d21c netx/net/sourceforge/jnlp/NetxPanel.java ---- a/netx/net/sourceforge/jnlp/NetxPanel.java Sat Jan 07 02:48:05 2012 -0500 -+++ b/netx/net/sourceforge/jnlp/NetxPanel.java Fri Apr 29 16:58:05 2011 -0400 -@@ -23,12 +23,13 @@ - package net.sourceforge.jnlp; - - import net.sourceforge.jnlp.AppletLog; --import net.sourceforge.jnlp.runtime.AppThreadGroup; - import net.sourceforge.jnlp.runtime.AppletInstance; - import net.sourceforge.jnlp.runtime.JNLPRuntime; - - import java.net.URL; - import java.util.Hashtable; -+import java.util.concurrent.ConcurrentHashMap; -+import java.util.concurrent.ConcurrentMap; - - import sun.applet.AppletViewerPanel; - import sun.awt.SunToolkit; -@@ -44,9 +45,58 @@ - private boolean exitOnFailure = true; - private AppletInstance appInst = null; - private boolean appletAlive; -+ private final String uKey; -+ -+ // We use this so that we can create exactly one thread group -+ // for all panels with the same uKey. -+ private static final ConcurrentMap<String, ThreadGroup> uKeyToTG = -+ new ConcurrentHashMap<String, ThreadGroup>(); -+ -+ // This map is actually a set (unfortunately there is no ConcurrentSet -+ // in java.util.concurrent). If KEY is in this map, then we know that -+ // an app context has been created for the panel that has uKey.equals(KEY), -+ // so we avoid creating it a second time for panels with the same uKey. -+ // Because it's a set, only the keys matter. However, we can't insert -+ // null values in because if we did, we couldn't use null checks to see -+ // if a key was absent before a putIfAbsent. -+ private static final ConcurrentMap<String, Boolean> appContextCreated = -+ new ConcurrentHashMap<String, Boolean>(); - - public NetxPanel(URL documentURL, Hashtable<String, String> atts) { - super(documentURL, atts); -+ -+ /* According to http://download.oracle.com/javase/6/docs/technotes/guides/deployment/deployment-guide/applet-compatibility.html, -+ * classloaders are shared iff these properties match: -+ * codebase, cache_archive, java_archive, archive -+ * -+ * To achieve this, we create the uniquekey based on those 4 values, -+ * always in the same order. The initial "<NAME>=" parts ensure a -+ * bad tag cannot trick the loader into getting shared with another. -+ */ -+ -+ // Firefox sometimes skips the codebase if it is default -- ".", -+ // so set it that way if absent -+ String codebaseAttr = atts.get("codebase") != null ? -+ atts.get("codebase") : "."; -+ -+ String cache_archiveAttr = atts.get("cache_archive") != null ? -+ atts.get("cache_archive") : ""; -+ -+ String java_archiveAttr = atts.get("java_archive") != null ? -+ atts.get("java_archive") : ""; -+ -+ String archiveAttr = atts.get("archive") != null ? -+ atts.get("archive") : ""; -+ -+ this.uKey = "codebase=" + codebaseAttr + -+ "cache_archive=" + cache_archiveAttr + -+ "java_archive=" + java_archiveAttr + -+ "archive=" + archiveAttr; -+ -+ // when this was being done (incorrectly) in Launcher, the call was -+ // new AppThreadGroup(mainGroup, file.getTitle()); -+ ThreadGroup tg = new ThreadGroup(Launcher.mainGroup, this.documentURL.toString()); -+ uKeyToTG.putIfAbsent(this.uKey, tg); - } - - // overloaded constructor, called when initialized via plugin -@@ -58,18 +108,6 @@ - } - - @Override -- public void run() { -- /* -- * create an AppContext for this thread associated with this particular -- * plugin instance (which runs in a different thread group from the rest -- * of the plugin). -- */ -- SunToolkit.createNewAppContext(); -- -- super.run(); -- } -- -- @Override - protected void showAppletException(Throwable t) { - /* - * Log any exceptions thrown while loading, initializing, starting, -@@ -78,7 +116,7 @@ - AppletLog.log(t); - super.showAppletException(t); - } -- -+ - //Overriding to use Netx classloader. You might need to relax visibility - //in sun.applet.AppletPanel for runLoader(). - protected void runLoader() { -@@ -90,7 +128,7 @@ - getCode(), - getWidth(), - getHeight(), -- atts); -+ atts, uKey); - - doInit = true; - dispatchAppletEvent(APPLET_LOADING, null); -@@ -154,11 +192,7 @@ - } - } - -- // when this was being done (incorrectly) in Launcher, the call was -- // new AppThreadGroup(mainGroup, file.getTitle()); -- ThreadGroup tg = new AppThreadGroup(Launcher.mainGroup, -- this.documentURL.toString()); -- handler = new Thread(tg, this); -+ handler = new Thread(getThreadGroup(), this); - handler.start(); - } - -@@ -174,4 +208,19 @@ - public boolean isAlive() { - return handler != null && handler.isAlive() && this.appletAlive; - } -+ -+ public ThreadGroup getThreadGroup() { -+ return uKeyToTG.get(uKey); -+ } -+ -+ public void createNewAppContext() { -+ if (Thread.currentThread().getThreadGroup() != getThreadGroup()) { -+ throw new RuntimeException("createNewAppContext called from the wrong thread."); -+ } -+ // only create a new context if one hasn't already been created for the -+ // applets with this unique key. -+ if (null == appContextCreated.putIfAbsent(uKey, Boolean.TRUE)) { -+ SunToolkit.createNewAppContext(); -+ } -+ } - } -diff -r f0647c938535 -r 77640d74d21c netx/net/sourceforge/jnlp/PluginBridge.java ---- a/netx/net/sourceforge/jnlp/PluginBridge.java Sat Jan 07 02:48:05 2012 -0500 -+++ b/netx/net/sourceforge/jnlp/PluginBridge.java Fri Apr 29 16:58:05 2011 -0400 -@@ -44,7 +44,8 @@ - private boolean codeBaseLookup; - - public PluginBridge(URL codebase, URL documentBase, String jar, String main, -- int width, int height, Hashtable<String, String> atts) -+ int width, int height, Hashtable<String, String> atts, -+ String uKey) - throws Exception { - specVersion = new Version("1.0"); - fileVersion = new Version("1.1"); -@@ -132,34 +133,7 @@ - else - security = null; - -- /* According to http://download.oracle.com/javase/6/docs/technotes/guides/deployment/deployment-guide/applet-compatibility.html, -- * classloaders are shared iff these properties match: -- * codebase, cache_archive, java_archive, archive -- * -- * To achieve this, we create the uniquekey based on those 4 values, -- * always in the same order. The initial "<NAME>=" parts ensure a -- * bad tag cannot trick the loader into getting shared with another. -- */ -- -- // Firefox sometimes skips the codebase if it is default -- ".", -- // so set it that way if absent -- String codebaseAttr = atts.get("codebase") != null ? -- atts.get("codebase") : "."; -- -- String cache_archiveAttr = atts.get("cache_archive") != null ? -- atts.get("cache_archive") : ""; -- -- String java_archiveAttr = atts.get("java_archive") != null ? -- atts.get("java_archive") : ""; -- -- String archiveAttr = atts.get("archive") != null ? -- atts.get("archive") : ""; -- -- this.uniqueKey = "codebase=" + codebaseAttr + -- "cache_archive=" + cache_archiveAttr + -- "java_archive=" + java_archiveAttr + -- "archive=" + archiveAttr; -- -+ this.uniqueKey = uKey; - usePack = false; - useVersion = false; - String jargs = atts.get("java_arguments"); -diff -r f0647c938535 -r 77640d74d21c plugin/icedteanp/java/sun/applet/PluginAppletViewer.java ---- a/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Sat Jan 07 02:48:05 2012 -0500 -+++ b/plugin/icedteanp/java/sun/applet/PluginAppletViewer.java Fri Apr 29 16:58:05 2011 -0400 -@@ -123,10 +123,10 @@ - class PluginAppletPanelFactory { - - public AppletPanel createPanel(PluginStreamHandler streamhandler, -- int identifier, -- long handle, int x, int y, -- final URL doc, -- final Hashtable<String, String> atts) { -+ final int identifier, -+ final long handle, int x, int y, -+ final URL doc, -+ final Hashtable<String, String> atts) { - final NetxPanel panel = AccessController.doPrivileged(new PrivilegedAction<NetxPanel>() { - public NetxPanel run() { - NetxPanel panel = new NetxPanel(doc, atts, false); -@@ -136,13 +136,29 @@ - } - }); - -- // create the frame. -- PluginAppletViewer.framePanel(identifier, handle, panel); -+ // Framing the panel needs to happen in a thread whose thread group -+ // is the same as the threadgroup of the applet thread. If this -+ // isn't the case, the awt eventqueue thread's context classloader -+ // won't be set to a JNLPClassLoader, and when an applet class needs -+ // to be loaded from the awt eventqueue, it won't be found. -+ Thread panelInit = new Thread(panel.getThreadGroup(), new Runnable() { -+ @Override public void run() { -+ panel.createNewAppContext(); -+ // create the frame. -+ PluginAppletViewer.framePanel(identifier, handle, panel); -+ panel.init(); -+ // Start the applet -+ initEventQueue(panel); -+ } -+ }, "NetXPanel initializer"); - -- panel.init(); -- -- // Start the applet -- initEventQueue(panel); -+ panelInit.start(); -+ while(panelInit.isAlive()) { -+ try { -+ panelInit.join(); -+ } catch (InterruptedException e) { -+ } -+ } - - // Wait for the panel to initialize - PluginAppletViewer.waitForAppletInit(panel); - diff --git a/dev-java/icedtea-web/files/icedtea-web-1.2.1-memcpy.patch b/dev-java/icedtea-web/files/icedtea-web-1.2.1-memcpy.patch deleted file mode 100644 index 6e2453f810a7..000000000000 --- a/dev-java/icedtea-web/files/icedtea-web-1.2.1-memcpy.patch +++ /dev/null @@ -1,14 +0,0 @@ ---- plugin/icedteanp/IcedTeaNPPlugin.cc.orig 2012-08-03 21:54:01.462412006 +0200 -+++ plugin/icedteanp/IcedTeaNPPlugin.cc 2012-08-03 21:54:45.760139442 +0200 -@@ -2053,8 +2053,10 @@ - - //Ensure any unused fields are NULL - memset(&browser_functions, 0, sizeof(NPNetscapeFuncs)); -+ //browserTable->size can be higher than our structure (bug #1106) -+ size_t copySize = browserTable->size < sizeof(NPNetscapeFuncs) ? browserTable->size : sizeof(NPNetscapeFuncs); - //Copy fields according to given size -- memcpy(&browser_functions, browserTable, browserTable->size); -+ memcpy(&browser_functions, browserTable, copySize); - - return true; - } diff --git a/dev-java/icedtea-web/icedtea-web-1.2.1-r8.ebuild b/dev-java/icedtea-web/icedtea-web-1.3.1-r7.ebuild index adae26da4c5a..2b18ad60ad56 100644 --- a/dev-java/icedtea-web/icedtea-web-1.2.1-r8.ebuild +++ b/dev-java/icedtea-web/icedtea-web-1.3.1-r7.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/icedtea-web-1.2.1-r8.ebuild,v 1.1 2012/08/03 20:15:13 caster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/icedtea-web-1.3.1-r7.ebuild,v 1.1 2012/11/14 21:59:24 caster Exp $ # Build written by Andrew John Hughes (ahughes@redhat.com) EAPI="4" @@ -15,32 +15,40 @@ LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2" SLOT="7" KEYWORDS="~amd64 ~ia64 ~x86" -IUSE="build doc javascript +nsplugin test" - -RDEPEND="dev-java/icedtea:${SLOT}" +IUSE="build doc gtk2 gtk3 javascript +nsplugin test" + +COMMON_DEP=" + dev-java/icedtea:${SLOT} + nsplugin? ( + >=dev-libs/glib-2.16 + gtk2? ( + !gtk3? ( >=x11-libs/gtk+-2.6:2 ) + gtk3? ( x11-libs/gtk+:3 ) + ) + !gtk2? ( x11-libs/gtk+:3 ) + )" +RDEPEND="${COMMON_DEP}" # Need system junit 4.8+. Bug #389795 -DEPEND="${RDEPEND} +DEPEND="${COMMON_DEP} + virtual/pkgconfig javascript? ( dev-java/rhino:1.6 ) nsplugin? ( net-misc/npapi-sdk ) test? ( >=dev-java/junit-4.8:4 )" pkg_setup() { - JAVA_PKG_WANT_BUILD_VM="icedtea-7 icedtea7" + JAVA_PKG_WANT_BUILD_VM="icedtea-${SLOT} icedtea${SLOT}" JAVA_PKG_WANT_SOURCE="1.6" JAVA_PKG_WANT_TARGET="1.6" java-vm-2_pkg_setup java-pkg-2_pkg_setup -} -unset_vars() { - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + VMHANDLE="icedtea-${SLOT}" } src_prepare() { # bug #356645 epatch "${FILESDIR}"/0002-Respect-LDFLAGS.patch - epatch "${FILESDIR}"/${P}-memcpy.patch eautoreconf } @@ -54,32 +62,35 @@ src_configure() { else icedteadir="/usr/$(get_libdir)/icedtea${SLOT}" installdir="/usr/$(get_libdir)/icedtea${SLOT}-web" + [[ "${vmhome}" == "${icedteadir}" ]] \ + || die "Unexpected install location of IcedTea ${SLOT} '${vmhome}'" fi - unset_vars - - if use build || [[ ${vmhome} == ${icedteadir} ]] ; then - VMHANDLE="icedtea-${SLOT}" - else - die "Unexpected install location of IcedTea${SLOT}" - fi - - einfo "Installing IcedTea-Web in ${installdir}" - einfo "Installing IcedTea-Web for Icedtea${SLOT} in ${icedteadir}" - if [ ! -e ${vmhome} ] ; then - eerror "Could not find JDK install directory ${vmhome}." - die - fi - - # we need to override all *dir variables that econf sets - # man page (javaws) is installed directly to icedteadir because it's easier than symlinking, as we don't know - # the suffix the man page will end up compressed with, anyway - econf \ - --prefix=${installdir} --mandir=${icedteadir}/man --infodir=${installdir}/share/info --datadir=${installdir}/share \ - --with-jdk-home=${icedteadir} \ - $(use_enable doc docs) \ - $(use_enable nsplugin plugin) \ + einfo "Installing IcedTea-Web in '${installdir}'" + einfo "Installing IcedTea-Web for IcedTea${SLOT} in '${icedteadir}'" + + local gtk_ver=3 + use gtk2 && gtk_ver=2 + use gtk3 && gtk_ver=3 + + local myconf=( + # we need to override all *dir variables that econf sets. + # man page (javaws) is installed directly to icedteadir because it's + # easier than symlinking, as we don't know the suffix the man page will + # end up compressed with, anyway + --prefix="${installdir}" + --mandir="${icedteadir}"/man + --infodir="${installdir}"/share/info + --datadir="${installdir}"/share + --with-jdk-home="${icedteadir}" + --with-gtk=${gtk_ver} + $(use_enable doc docs) + $(use_enable nsplugin plugin) $(use_with javascript rhino) + ) + + unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + econf "${myconf[@]}" } src_compile() { @@ -88,9 +99,8 @@ src_compile() { } src_install() { - # parallel make problem bug #372235 - emake -j1 DESTDIR="${D}" install - dodoc AUTHORS README NEWS + # bug #440906 + MAKEOPTS+=" -j1" default if use nsplugin; then install_mozilla_plugin "${installdir}/$(get_libdir)/IcedTeaPlugin.so"; @@ -112,6 +122,7 @@ pkg_postinst() { } pkg_prerm() { - # override the java-vm-2 eclass check for removing a system VM, as it doesn't make sense here + # override the java-vm-2 eclass check for removing a system VM, as it + # doesn't make sense here. :; } diff --git a/dev-java/icedtea-web/icedtea-web-1.2.1-r1.ebuild b/dev-java/icedtea-web/icedtea-web-1.3.1.ebuild index b85e8b66b140..7ea7d4b218bc 100644 --- a/dev-java/icedtea-web/icedtea-web-1.2.1-r1.ebuild +++ b/dev-java/icedtea-web/icedtea-web-1.3.1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/icedtea-web-1.2.1-r1.ebuild,v 1.1 2012/08/03 20:15:13 caster Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-java/icedtea-web/icedtea-web-1.3.1.ebuild,v 1.1 2012/11/14 21:59:24 caster Exp $ # Build written by Andrew John Hughes (ahughes@redhat.com) EAPI="4" @@ -15,32 +15,40 @@ LICENSE="GPL-2 GPL-2-with-linking-exception LGPL-2" SLOT="6" KEYWORDS="~amd64 ~ia64 ~ppc ~ppc64 ~x86" -IUSE="build doc javascript +nsplugin test" - -RDEPEND="dev-java/icedtea:${SLOT}" +IUSE="build doc gtk2 gtk3 javascript +nsplugin test" + +COMMON_DEP=" + dev-java/icedtea:${SLOT} + nsplugin? ( + >=dev-libs/glib-2.16 + gtk2? ( + !gtk3? ( >=x11-libs/gtk+-2.6:2 ) + gtk3? ( x11-libs/gtk+:3 ) + ) + !gtk2? ( x11-libs/gtk+:3 ) + )" +RDEPEND="${COMMON_DEP}" # Need system junit 4.8+. Bug #389795 -DEPEND="${RDEPEND} +DEPEND="${COMMON_DEP} + virtual/pkgconfig javascript? ( dev-java/rhino:1.6 ) nsplugin? ( net-misc/npapi-sdk ) test? ( >=dev-java/junit-4.8:4 )" pkg_setup() { - JAVA_PKG_WANT_BUILD_VM="icedtea-6 icedtea6" + JAVA_PKG_WANT_BUILD_VM="icedtea-${SLOT} icedtea${SLOT}" JAVA_PKG_WANT_SOURCE="1.6" JAVA_PKG_WANT_TARGET="1.6" java-vm-2_pkg_setup java-pkg-2_pkg_setup -} -unset_vars() { - unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + VMHANDLE="icedtea-${SLOT}" } src_prepare() { # bug #356645 epatch "${FILESDIR}"/0002-Respect-LDFLAGS.patch - epatch "${FILESDIR}"/${P}-memcpy.patch eautoreconf } @@ -54,32 +62,35 @@ src_configure() { else icedteadir="/usr/$(get_libdir)/icedtea${SLOT}" installdir="/usr/$(get_libdir)/icedtea${SLOT}-web" + [[ "${vmhome}" == "${icedteadir}" ]] \ + || die "Unexpected install location of IcedTea ${SLOT} '${vmhome}'" fi - unset_vars - - if use build || [[ ${vmhome} == ${icedteadir} ]] ; then - VMHANDLE="icedtea-${SLOT}" - else - die "Unexpected install location of IcedTea${SLOT}" - fi - - einfo "Installing IcedTea-Web in ${installdir}" - einfo "Installing IcedTea-Web for Icedtea${SLOT} in ${icedteadir}" - if [ ! -e ${vmhome} ] ; then - eerror "Could not find JDK install directory ${vmhome}." - die - fi - - # we need to override all *dir variables that econf sets - # man page (javaws) is installed directly to icedteadir because it's easier than symlinking, as we don't know - # the suffix the man page will end up compressed with, anyway - econf \ - --prefix=${installdir} --mandir=${icedteadir}/man --infodir=${installdir}/share/info --datadir=${installdir}/share \ - --with-jdk-home=${icedteadir} \ - $(use_enable doc docs) \ - $(use_enable nsplugin plugin) \ + einfo "Installing IcedTea-Web in '${installdir}'" + einfo "Installing IcedTea-Web for IcedTea${SLOT} in '${icedteadir}'" + + local gtk_ver=3 + use gtk2 && gtk_ver=2 + use gtk3 && gtk_ver=3 + + local myconf=( + # we need to override all *dir variables that econf sets. + # man page (javaws) is installed directly to icedteadir because it's + # easier than symlinking, as we don't know the suffix the man page will + # end up compressed with, anyway + --prefix="${installdir}" + --mandir="${icedteadir}"/man + --infodir="${installdir}"/share/info + --datadir="${installdir}"/share + --with-jdk-home="${icedteadir}" + --with-gtk=${gtk_ver} + $(use_enable doc docs) + $(use_enable nsplugin plugin) $(use_with javascript rhino) + ) + + unset JAVA_HOME JDK_HOME CLASSPATH JAVAC JAVACFLAGS + econf "${myconf[@]}" } src_compile() { @@ -88,9 +99,8 @@ src_compile() { } src_install() { - # parallel make problem bug #372235 - emake -j1 DESTDIR="${D}" install - dodoc AUTHORS README NEWS + # bug #440906 + MAKEOPTS+=" -j1" default if use nsplugin; then install_mozilla_plugin "${installdir}/$(get_libdir)/IcedTeaPlugin.so"; @@ -112,6 +122,7 @@ pkg_postinst() { } pkg_prerm() { - # override the java-vm-2 eclass check for removing a system VM, as it doesn't make sense here + # override the java-vm-2 eclass check for removing a system VM, as it + # doesn't make sense here. :; } |