6631966: (process) Raise Windows pipe buffer size an extra 24 bytes (win)
authormartin
Mon, 10 Mar 2008 14:32:50 -0700
changeset 43 bfccfd41f0fc
parent 42 6c846a8c97d3
child 44 9291315d799d
6631966: (process) Raise Windows pipe buffer size an extra 24 bytes (win) Reviewed-by: alanb, iris
jdk/src/windows/native/java/lang/ProcessImpl_md.c
--- a/jdk/src/windows/native/java/lang/ProcessImpl_md.c	Sun Mar 09 21:56:42 2008 -0700
+++ b/jdk/src/windows/native/java/lang/ProcessImpl_md.c	Mon Mar 10 14:32:50 2008 -0700
@@ -33,7 +33,12 @@
 #include <windows.h>
 #include <io.h>
 
-#define PIPE_SIZE 4096
+/* We try to make sure that we can read and write 4095 bytes (the
+ * fixed limit on Linux) to the pipe on all operating systems without
+ * deadlock.  Windows 2000 inexplicably appears to need an extra 24
+ * bytes of slop to avoid deadlock.
+ */
+#define PIPE_SIZE (4096+24)
 
 char *
 extractExecutablePath(JNIEnv *env, char *source)