Merge "NativeHandle.java: dup() with O_CLOEXEC"
This commit is contained in:
@@ -16,6 +16,8 @@
|
||||
|
||||
package android.os;
|
||||
|
||||
import static android.system.OsConstants.F_DUPFD_CLOEXEC;
|
||||
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.SystemApi;
|
||||
import android.system.ErrnoException;
|
||||
@@ -108,7 +110,10 @@ public final class NativeHandle implements Closeable {
|
||||
FileDescriptor[] fds = new FileDescriptor[mFds.length];
|
||||
try {
|
||||
for (int i = 0; i < mFds.length; i++) {
|
||||
fds[i] = Os.dup(mFds[i]);
|
||||
FileDescriptor newFd = new FileDescriptor();
|
||||
int fdint = Os.fcntlInt(mFds[i], F_DUPFD_CLOEXEC, 0);
|
||||
newFd.setInt$(fdint);
|
||||
fds[i] = newFd;
|
||||
}
|
||||
} catch (ErrnoException e) {
|
||||
e.rethrowAsIOException();
|
||||
|
||||
Reference in New Issue
Block a user