GC.prune(Set<ObjectId>): return early if objects directory is empty

Change-Id: Id56b102604c4e0437230e3e7c59c0a3a1b676256
Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>
This commit is contained in:
Matthias Sohn 2017-01-30 00:52:33 +01:00
parent 8fd500e20c
commit a11bb03127
1 changed files with 33 additions and 30 deletions

View File

@ -364,7 +364,9 @@ public void prune(Set<ObjectId> objectsToKeep) throws IOException,
Set<ObjectId> indexObjects = null;
File objects = repo.getObjectsDirectory();
String[] fanout = objects.list();
if (fanout != null && fanout.length > 0) {
if (fanout == null || fanout.length == 0) {
return;
}
pm.beginTask(JGitText.get().pruneLooseUnreferencedObjects,
fanout.length);
try {
@ -400,9 +402,10 @@ public void prune(Set<ObjectId> objectsToKeep) throws IOException,
} finally {
pm.endTask();
}
}
if (deletionCandidates.isEmpty())
if (deletionCandidates.isEmpty()) {
return;
}
// From the set of current refs remove all those which have been handled
// during last repack(). Only those refs will survive which have been