diff options
author | Dan Albert <danalbert@google.com> | 2014-06-16 17:43:45 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2014-06-16 15:34:52 +0000 |
commit | 397f843f6c8dc55a48cad015eecbb74f902145b9 (patch) | |
tree | e95bd28fc179bbe98f352856e7aa6be48e1b47e5 | |
parent | dda7bc2000ee9df014ecdadb20e9df6abd5716e4 (diff) | |
parent | 573ffd03049495be0921cc8c6461c32be5f0ee60 (diff) | |
download | android_external_dhcpcd-397f843f6c8dc55a48cad015eecbb74f902145b9.tar.gz android_external_dhcpcd-397f843f6c8dc55a48cad015eecbb74f902145b9.tar.bz2 android_external_dhcpcd-397f843f6c8dc55a48cad015eecbb74f902145b9.zip |
Merge "Update compat/closefrom.c to upstream ToT."
-rw-r--r-- | compat/closefrom.c | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/compat/closefrom.c b/compat/closefrom.c index 664c4bc..9d34a53 100644 --- a/compat/closefrom.c +++ b/compat/closefrom.c @@ -32,11 +32,18 @@ int closefrom(int fd) { - int max = getdtablesize(); - int i; - int r = 0; + long max; + int i, r; - for (i = fd; i < max; i++) - r += close(i); +#ifdef _SC_OPEN_MAX + max = sysconf(_SC_OPEN_MAX); +#else + max = getdtablesize(); +#endif + r = 0; + for (i = fd; i < max; i++) { + if (close(i) == -1) + r = -1; + } return r; } |