summaryrefslogtreecommitdiff
path: root/apex/blobstore/service
diff options
context:
space:
mode:
authorSudheer Shanka <sudheersai@google.com>2020-03-19 19:25:19 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2020-03-19 19:25:19 +0000
commitb63e5b27a02679604b98bc8e69d1bf9cfa4a6ec4 (patch)
tree0379a278deeeba5e87e797fdb880adb1a12f3d8b /apex/blobstore/service
parent368dddb0a48b6847137c0f27252ff64548877b3f (diff)
parent09deac5816c61e0c7e441f9349f87dd24e79e029 (diff)
Merge "Dump no. of open fds correctly." into rvc-dev
Diffstat (limited to 'apex/blobstore/service')
-rw-r--r--apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java49
1 files changed, 36 insertions, 13 deletions
diff --git a/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java b/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java
index 8b640ca75698..4a1c63e1e264 100644
--- a/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java
+++ b/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java
@@ -346,6 +346,9 @@ class BlobMetadata {
mRevocableFds.get(callingPackage);
if (revocableFdsForPkg != null) {
revocableFdsForPkg.remove(revocableFd);
+ if (revocableFdsForPkg.isEmpty()) {
+ mRevocableFds.remove(callingPackage);
+ }
}
}
});
@@ -360,27 +363,47 @@ class BlobMetadata {
fout.println("Committers:");
fout.increaseIndent();
- for (int i = 0, count = mCommitters.size(); i < count; ++i) {
- final Committer committer = mCommitters.valueAt(i);
- fout.println("committer " + committer.toString());
- fout.increaseIndent();
- committer.dump(fout);
- fout.decreaseIndent();
+ if (mCommitters.isEmpty()) {
+ fout.println("<empty>");
+ } else {
+ for (int i = 0, count = mCommitters.size(); i < count; ++i) {
+ final Committer committer = mCommitters.valueAt(i);
+ fout.println("committer " + committer.toString());
+ fout.increaseIndent();
+ committer.dump(fout);
+ fout.decreaseIndent();
+ }
}
fout.decreaseIndent();
fout.println("Leasees:");
fout.increaseIndent();
- for (int i = 0, count = mLeasees.size(); i < count; ++i) {
- final Leasee leasee = mLeasees.valueAt(i);
- fout.println("leasee " + leasee.toString());
- fout.increaseIndent();
- leasee.dump(mContext, fout);
- fout.decreaseIndent();
+ if (mLeasees.isEmpty()) {
+ fout.println("<empty>");
+ } else {
+ for (int i = 0, count = mLeasees.size(); i < count; ++i) {
+ final Leasee leasee = mLeasees.valueAt(i);
+ fout.println("leasee " + leasee.toString());
+ fout.increaseIndent();
+ leasee.dump(mContext, fout);
+ fout.decreaseIndent();
+ }
}
fout.decreaseIndent();
- fout.println("Open fds: #" + mRevocableFds.size());
+ fout.println("Open fds:");
+ fout.increaseIndent();
+ if (mRevocableFds.isEmpty()) {
+ fout.println("<empty>");
+ } else {
+ for (int i = 0, count = mRevocableFds.size(); i < count; ++i) {
+ final String packageName = mRevocableFds.keyAt(i);
+ final ArraySet<RevocableFileDescriptor> packageFds =
+ mRevocableFds.valueAt(i);
+ fout.println(packageName + "#" + packageFds.size());
+ }
+ }
+ fout.decreaseIndent();
}
void writeToXml(XmlSerializer out) throws IOException {