From 5d7ae91e41de37c836f13a640f9c62049544bf1d Mon Sep 17 00:00:00 2001 From: Thomas Corbat Date: Wed, 7 Oct 2015 15:22:44 +0200 Subject: [PATCH] Bug 479241 - [PTY] Output gets cut off after EOF on input Change-Id: If13b0d977f621e21e7fe89b2b52f07f74858787c Signed-off-by: Thomas Corbat --- .../org/eclipse/cdt/utils/pty/PTYOutputStream.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/core/org.eclipse.cdt.core.native/src/org/eclipse/cdt/utils/pty/PTYOutputStream.java b/core/org.eclipse.cdt.core.native/src/org/eclipse/cdt/utils/pty/PTYOutputStream.java index 6bdfa8a68a2..0e6bf3cf0d8 100644 --- a/core/org.eclipse.cdt.core.native/src/org/eclipse/cdt/utils/pty/PTYOutputStream.java +++ b/core/org.eclipse.cdt.core.native/src/org/eclipse/cdt/utils/pty/PTYOutputStream.java @@ -72,14 +72,15 @@ public class PTYOutputStream extends OutputStream { public void close() throws IOException { if (master.getFD() == -1) return; - // For non-windows platforms, send EOT before closing - if (!Platform.OS_WIN32.equals(Platform.getOS())) { + // For non-windows platforms, send EOT instead of closing + if (Platform.OS_WIN32.equals(Platform.getOS())) { + int status = close0(master.getFD()); + if (status == -1) + throw new IOException("close error"); //$NON-NLS-1$ + master.setFD(-1); + } else { write(EOT); } - int status = close0(master.getFD()); - if (status == -1) - throw new IOException("close error"); //$NON-NLS-1$ - master.setFD(-1); } @Override