summaryrefslogtreecommitdiff
path: root/apex/blobstore
diff options
context:
space:
mode:
authorSudheer Shanka <sudheersai@google.com>2020-03-15 15:25:33 -0700
committerSudheer Shanka <sudheersai@google.com>2020-03-18 21:12:01 -0700
commit09deac5816c61e0c7e441f9349f87dd24e79e029 (patch)
treedbb2d0ec3348229e26d7a3fe5ad3888a4f546547 /apex/blobstore
parent03b8a41461b7cf7b4b65817259b7a9587041f7d6 (diff)
Dump no. of open fds correctly.
Fixes: 151378533 Test: atest --test-mapping apex/blobstore Change-Id: Ib52352ffd3334734122a62ab33c75ddbdda0aa81
Diffstat (limited to 'apex/blobstore')
-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 970766d2c8a6..cd6798f83610 100644
--- a/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java
+++ b/apex/blobstore/service/java/com/android/server/blob/BlobMetadata.java
@@ -326,6 +326,9 @@ class BlobMetadata {
mRevocableFds.get(callingPackage);
if (revocableFdsForPkg != null) {
revocableFdsForPkg.remove(revocableFd);
+ if (revocableFdsForPkg.isEmpty()) {
+ mRevocableFds.remove(callingPackage);
+ }
}
}
});
@@ -340,27 +343,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 {