diff options
| author | Dave Platt <dplatt@google.com> | 2014-01-07 19:55:43 +0000 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2014-01-07 19:55:43 +0000 |
| commit | 1b5bc6f8f96fc30b651679411a4da00d3fbebaa7 (patch) | |
| tree | 77146ae484aa484ec3a05e8b2f21f27ab5491d82 /core/java | |
| parent | 105b545ec0ad5ea4f723f8d8b06de37f68c2f6c3 (diff) | |
| parent | bd9acc2218fcf3cd6605554a45db2251753ddd7b (diff) | |
am bd9acc22: am e966e577: am 02f042dd: Fix socket descriptor leak from Zygote to child app
* commit 'bd9acc2218fcf3cd6605554a45db2251753ddd7b':
Fix socket descriptor leak from Zygote to child app
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/com/android/internal/os/ZygoteInit.java | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/core/java/com/android/internal/os/ZygoteInit.java b/core/java/com/android/internal/os/ZygoteInit.java index 25118e8f5a82..55d5513346ff 100644 --- a/core/java/com/android/internal/os/ZygoteInit.java +++ b/core/java/com/android/internal/os/ZygoteInit.java @@ -192,10 +192,16 @@ public class ZygoteInit { static void closeServerSocket() { try { if (sServerSocket != null) { + FileDescriptor fd = sServerSocket.getFileDescriptor(); sServerSocket.close(); + if (fd != null) { + Libcore.os.close(fd); + } } } catch (IOException ex) { Log.e(TAG, "Zygote: error closing sockets", ex); + } catch (libcore.io.ErrnoException ex) { + Log.e(TAG, "Zygote: error closing descriptor", ex); } sServerSocket = null; |
