Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c10f60a4 authored by Nick Kralevich's avatar Nick Kralevich
Browse files

replace dup() with fcntl(F_DUPFD_CLOEXEC)

Replace calls to dup() with fcntl(F_DUPFD_CLOEXEC). The only difference
between the two is that O_CLOEXEC is set on the newly duped file
descriptor. This helps address file descriptor leaks crossing an exec()
boundary in multi-threaded processes

Test: compiles and boots
Change-Id: I6b82a7932593a5e39880fcf3ff6443dab6500094
parent b6d32aa5
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -473,7 +473,7 @@ static jobject android_os_Parcel_readFileDescriptor(JNIEnv* env, jclass clazz, j
    if (parcel != NULL) {
        int fd = parcel->readFileDescriptor();
        if (fd < 0) return NULL;
        fd = dup(fd);
        fd = fcntl(fd, F_DUPFD_CLOEXEC, 0);
        if (fd < 0) return NULL;
        return jniCreateFileDescriptor(env, fd);
    }