Merge "UNIXProcess_md.c: do not retry EINTR failed close() calls"
diff --git a/ojluni/src/main/native/UNIXProcess_md.c b/ojluni/src/main/native/UNIXProcess_md.c
index 7177005..40fdc18 100644
--- a/ojluni/src/main/native/UNIXProcess_md.c
+++ b/ojluni/src/main/native/UNIXProcess_md.c
@@ -387,7 +387,17 @@
restartableClose(int fd)
{
int err;
- RESTARTABLE(close(fd), err);
+ // Android-changed: do not retry EINTR close() failures. b/20501816
+ // Note: This code was removed upstream in OpenJDK 7u50,
+ // commit http://hg.openjdk.java.net/jdk/jdk/rev/e2e5122cd62e
+ // relating to upstream bug JDK-5049299. The entire file was
+ // then dropped in favor of .java code in upstream OpenJDK 9,
+ // commit http://hg.openjdk.java.net/jdk/jdk/rev/fe8344cf6496
+ //
+ // If we integrate OpenJDK 7u50+, this Android patch can be dropped.
+ //
+ // RESTARTABLE(close(fd), err);
+ err = close(fd);
return err;
}