Mercurial > hg > release > icedtea7-2.4
view patches/boot/break-processbuilder-dependency.patch @ 2733:3f3d537371cd
Update to icedtea-2.4.8pre01.
2014-04-17 Andrew John Hughes <gnu_andrew@member.fsf.org>
* Makefile.am:
(CORBA_CHANGESET): Update to icedtea-2.4.8pre01 tag.
(JAXP_CHANGESET): Likewise.
(JAXWS_CHANGESET): Likewise.
(JDK_CHANGESET): Likewise.
(LANGTOOLS_CHANGESET): Likewise.
(OPENJDK_CHANGESET): Likewise.
(CORBA_SHA256SUM): Likewise.
(JAXP_SHA256SUM): Likewise.
(JAXWS_SHA256SUM): Likewise.
(JDK_SHA256SUM): Likewise.
(LANGTOOLS_SHA256SUM): Likewise.
(OPENJDK_SHA256SUM): Likewise.
(ICEDTEA_PATCHES): Temporarily disable systemtap_gc
patch which breaks build.
* NEWS: Add remaining changes from u55 and PR1188
regression fix.
* hotspot.map: Update to icedtea-2.4.8pre01.
* patches/boot/break-processbuilder-dependency.patch:
Regenerated.
* patches/boot/ecj-diamond.patch:
Add new case in java.util.logging.LogManager.
author | Andrew John Hughes <gnu_andrew@member.fsf.org> |
---|---|
date | Thu, 17 Apr 2014 17:21:03 +0100 |
parents | a58071a38743 |
children |
line wrap: on
line source
diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/java/lang/UNIXProcess.java.linux openjdk-boot/jdk/src/solaris/classes/java/lang/UNIXProcess.java.linux --- openjdk-boot.orig/jdk/src/solaris/classes/java/lang/UNIXProcess.java.linux 2014-04-16 19:41:14.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/java/lang/UNIXProcess.java.linux 2014-04-17 15:36:16.563068772 +0100 @@ -63,6 +63,32 @@ private /* final */ InputStream stdout; private /* final */ InputStream stderr; + /** + * Required package-private classes taken from + * Oracle's java.lang.ProcessBuilder for bootstrapping. + */ + + /** + * Implements a <a href="#redirect-output">null input stream</a>. + */ + static class NullInputStream extends InputStream { + static final NullInputStream INSTANCE = new NullInputStream(); + private NullInputStream() {} + public int read() { return -1; } + public int available() { return 0; } + } + + /** + * Implements a <a href="#redirect-input">null output stream</a>. + */ + static class NullOutputStream extends OutputStream { + static final NullOutputStream INSTANCE = new NullOutputStream(); + private NullOutputStream() {} + public void write(int b) throws IOException { + throw new IOException("Stream closed"); + } + } + private static enum LaunchMechanism { FORK(1), VFORK(3); @@ -211,15 +237,15 @@ void initStreams(int[] fds) throws IOException { stdin = (fds[0] == -1) ? - ProcessBuilder.NullOutputStream.INSTANCE : + NullOutputStream.INSTANCE : new ProcessPipeOutputStream(fds[0]); stdout = (fds[1] == -1) ? - ProcessBuilder.NullInputStream.INSTANCE : + NullInputStream.INSTANCE : new ProcessPipeInputStream(fds[1]); stderr = (fds[2] == -1) ? - ProcessBuilder.NullInputStream.INSTANCE : + NullInputStream.INSTANCE : new ProcessPipeInputStream(fds[2]); processReaperExecutor.execute(new Runnable() { @@ -332,7 +358,7 @@ byte[] stragglers = drainInputStream(in); in.close(); this.in = (stragglers == null) ? - ProcessBuilder.NullInputStream.INSTANCE : + NullInputStream.INSTANCE : new ByteArrayInputStream(stragglers); if (buf == null) // asynchronous close()? this.in = null; @@ -363,7 +389,7 @@ // We know of no reason to get an IOException, but if // we do, there's nothing else to do but carry on. } - this.out = ProcessBuilder.NullOutputStream.INSTANCE; + this.out = NullOutputStream.INSTANCE; } } } diff -Nru openjdk-boot.orig/jdk/src/solaris/classes/java/lang/UNIXProcess.java.solaris openjdk-boot/jdk/src/solaris/classes/java/lang/UNIXProcess.java.solaris --- openjdk-boot.orig/jdk/src/solaris/classes/java/lang/UNIXProcess.java.solaris 2014-04-16 19:41:14.000000000 +0100 +++ openjdk-boot/jdk/src/solaris/classes/java/lang/UNIXProcess.java.solaris 2014-04-17 15:36:49.211552223 +0100 @@ -47,6 +47,32 @@ private DeferredCloseInputStream stdout_inner_stream; private InputStream stderr_stream; + /** + * Required package-private classes taken from + * Oracle's java.lang.ProcessBuilder for bootstrapping. + */ + + /** + * Implements a <a href="#redirect-output">null input stream</a>. + */ + static class NullInputStream extends InputStream { + static final NullInputStream INSTANCE = new NullInputStream(); + private NullInputStream() {} + public int read() { return -1; } + public int available() { return 0; } + } + + /** + * Implements a <a href="#redirect-input">null output stream</a>. + */ + static class NullOutputStream extends OutputStream { + static final NullOutputStream INSTANCE = new NullOutputStream(); + private NullOutputStream() {} + public void write(int b) throws IOException { + throw new IOException("Stream closed"); + } + } + private static enum LaunchMechanism { FORK(1), POSIX_SPAWN(2); @@ -145,7 +171,7 @@ java.security.AccessController.doPrivileged( new java.security.PrivilegedAction<Void>() { public Void run() { if (std_fds[0] == -1) - stdin_stream = ProcessBuilder.NullOutputStream.INSTANCE; + stdin_stream = NullOutputStream.INSTANCE; else { FileDescriptor stdin_fd = new FileDescriptor(); fdAccess.set(stdin_fd, std_fds[0]); @@ -154,7 +180,7 @@ } if (std_fds[1] == -1) - stdout_stream = ProcessBuilder.NullInputStream.INSTANCE; + stdout_stream = NullInputStream.INSTANCE; else { FileDescriptor stdout_fd = new FileDescriptor(); fdAccess.set(stdout_fd, std_fds[1]); @@ -163,7 +189,7 @@ } if (std_fds[2] == -1) - stderr_stream = ProcessBuilder.NullInputStream.INSTANCE; + stderr_stream = NullInputStream.INSTANCE; else { FileDescriptor stderr_fd = new FileDescriptor(); fdAccess.set(stderr_fd, std_fds[2]);