summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Kralevich <nnk@google.com>2013-06-18 17:56:28 -0700
committerNick Kralevich <nnk@google.com>2013-06-18 17:56:28 -0700
commit1b2d59500a8c066dec413f906c480ee46f004df5 (patch)
tree02e9113acd62ed256f00432e32d440b9f83dd475
parent9f6bb77eb61a465f13147ada9a920d7ba9567c92 (diff)
downloadframeworks_base-1b2d59500a8c066dec413f906c480ee46f004df5.zip
frameworks_base-1b2d59500a8c066dec413f906c480ee46f004df5.tar.gz
frameworks_base-1b2d59500a8c066dec413f906c480ee46f004df5.tar.bz2
NativeCrashListener: fix file descriptor leak.
Sending thousands of crashes can result in the system eventually running out of file descriptors. Close file descriptors after we're done with them. Change-Id: I09ae9ce36426ded3fd591dda9a3550a19c2f01d3
-rw-r--r--services/java/com/android/server/am/NativeCrashListener.java7
1 files changed, 7 insertions, 0 deletions
diff --git a/services/java/com/android/server/am/NativeCrashListener.java b/services/java/com/android/server/am/NativeCrashListener.java
index 307ab03..2c7f1f1 100644
--- a/services/java/com/android/server/am/NativeCrashListener.java
+++ b/services/java/com/android/server/am/NativeCrashListener.java
@@ -152,6 +152,13 @@ final class NativeCrashListener extends Thread {
Slog.d(TAG, "Exception writing ack: " + e.getMessage());
}
}
+ try {
+ Libcore.os.close(peerFd);
+ } catch (ErrnoException e) {
+ if (MORE_DEBUG) {
+ Slog.d(TAG, "Exception closing socket: " + e.getMessage());
+ }
+ }
}
}
}