summaryrefslogtreecommitdiff
path: root/extra/icedtea-web-java7
diff options
context:
space:
mode:
Diffstat (limited to 'extra/icedtea-web-java7')
-rw-r--r--extra/icedtea-web-java7/PKGBUILD9
-rw-r--r--extra/icedtea-web-java7/openjdk-hotfix.patch56
2 files changed, 62 insertions, 3 deletions
diff --git a/extra/icedtea-web-java7/PKGBUILD b/extra/icedtea-web-java7/PKGBUILD
index eee6629cf..a28b75be1 100644
--- a/extra/icedtea-web-java7/PKGBUILD
+++ b/extra/icedtea-web-java7/PKGBUILD
@@ -4,14 +4,16 @@
pkgbase=icedtea-web-java7
pkgname=('icedtea-web-java7' 'icedtea-web-java7-doc')
pkgver=1.4
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64')
url="http://icedtea.classpath.org/wiki/IcedTea-Web"
license=('GPL2')
makedepends=('jdk7-openjdk' 'zip' 'libxtst' 'npapi-sdk' 'rhino' 'junit' 'firefox' 'chromium' 'epiphany')
noextract=${pkgbase/-java7/}-$pkgver.tar.gz # due to broken path names in the tarball that fails with LANG=C in our chroot
-source=(http://icedtea.classpath.org/download/source/${pkgbase/-java7/}-$pkgver.tar.gz)
-sha256sums=('e53a41fa132e086fa8d17cadf1e7e38cb3ab99577277949fbcae4ab8705245fb')
+source=(http://icedtea.classpath.org/download/source/${pkgbase/-java7/}-$pkgver.tar.gz
+ openjdk-hotfix.patch)
+sha256sums=('e53a41fa132e086fa8d17cadf1e7e38cb3ab99577277949fbcae4ab8705245fb'
+ '1bf96e430d0694c53539e4e7a8c979c65a2ab5274d8ae38067b0fd7dd5bfba03')
_javaver=7
_jvmdir=/usr/lib/jvm/java-${_javaver}-openjdk
@@ -22,6 +24,7 @@ build() {
LANG=en_US.UTF-8 bsdtar -x -f ${srcdir}/${pkgbase/-java7/}-$pkgver.tar.gz
cd "${srcdir}"/icedtea-web*
+ patch -Np1 < $srcdir/openjdk-hotfix.patch
./configure --prefix=${_jvmdir} \
--datarootdir=/usr/share \
--with-jdk-home=${_jvmdir} \
diff --git a/extra/icedtea-web-java7/openjdk-hotfix.patch b/extra/icedtea-web-java7/openjdk-hotfix.patch
new file mode 100644
index 000000000..29a0a309b
--- /dev/null
+++ b/extra/icedtea-web-java7/openjdk-hotfix.patch
@@ -0,0 +1,56 @@
+diff -r 1a327a09262e netx/net/sourceforge/jnlp/runtime/Boot.java
+--- a/netx/net/sourceforge/jnlp/runtime/Boot.java Mon Jun 10 13:22:53 2013 +0200
++++ b/netx/net/sourceforge/jnlp/runtime/Boot.java Wed Jun 19 10:32:32 2013 +0200
+@@ -35,6 +35,8 @@
+ import net.sourceforge.jnlp.cache.UpdatePolicy;
+ import net.sourceforge.jnlp.security.viewer.CertificateViewer;
+ import net.sourceforge.jnlp.services.ServiceUtil;
++import sun.awt.AppContext;
++import sun.awt.SunToolkit;
+
+ /**
+ * This is the main entry point for the JNLP client. The main
+@@ -113,6 +115,9 @@
+ * Launch the JNLP file specified by the command-line arguments.
+ */
+ public static void main(String[] argsIn) {
++ if (AppContext.getAppContext() == null) {
++ SunToolkit.createNewAppContext();
++ }
+ args = argsIn;
+
+ if (null != getOption("-viewer")) {
+diff -r 1a327a09262e netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java
+--- a/netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java Mon Jun 10 13:22:53 2013 +0200
++++ b/netx/net/sourceforge/jnlp/runtime/JNLPRuntime.java Wed Jun 19 10:32:32 2013 +0200
+@@ -234,7 +234,7 @@
+ try {
+ UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
+ } catch (Exception e) {
+- // ignore it
++ e.printStackTrace();
+ }
+
+ doMainAppContextHacks();
+diff -r 1a327a09262e plugin/icedteanp/java/sun/applet/PluginMain.java
+--- a/plugin/icedteanp/java/sun/applet/PluginMain.java Mon Jun 10 13:22:53 2013 +0200
++++ b/plugin/icedteanp/java/sun/applet/PluginMain.java Wed Jun 19 10:32:32 2013 +0200
+@@ -72,6 +72,8 @@
+ import java.net.ProxySelector;
+ import java.util.Enumeration;
+ import java.util.Properties;
++import sun.awt.AppContext;
++import sun.awt.SunToolkit;
+
+ import net.sourceforge.jnlp.config.DeploymentConfiguration;
+ import net.sourceforge.jnlp.runtime.JNLPRuntime;
+@@ -94,6 +96,9 @@
+ */
+ public static void main(String args[])
+ throws IOException {
++ if (AppContext.getAppContext() == null) {
++ SunToolkit.createNewAppContext();
++ }
+ if (args.length != 2 || !(new File(args[0]).exists()) || !(new File(args[1]).exists())) {
+ System.err.println("Invalid pipe names provided. Refusing to proceed.");
+ System.exit(1);