IndexDiff: Remove unnecessary changesExist flag
Instead of setting a boolean when a difference record is found, return false from diff() only if all of the collections are empty. When all of them are empty, no difference was found. Change-Id: I555fef37adb764ce253481751071c53ad12cf416 Signed-off-by: Shawn O. Pearce <spearce@spearce.org>
This commit is contained in:
parent
a66a7d90fd
commit
18abb8195a
|
@ -168,7 +168,6 @@ public void setFilter(TreeFilter filter) {
|
||||||
* @throws IOException
|
* @throws IOException
|
||||||
*/
|
*/
|
||||||
public boolean diff() throws IOException {
|
public boolean diff() throws IOException {
|
||||||
boolean changesExist = false;
|
|
||||||
dirCache = repository.readDirCache();
|
dirCache = repository.readDirCache();
|
||||||
|
|
||||||
TreeWalk treeWalk = new TreeWalk(repository);
|
TreeWalk treeWalk = new TreeWalk(repository);
|
||||||
|
@ -202,12 +201,10 @@ public boolean diff() throws IOException {
|
||||||
!= dirCacheIterator.getEntryRawMode()) {
|
!= dirCacheIterator.getEntryRawMode()) {
|
||||||
// in repo, in index, content diff => changed
|
// in repo, in index, content diff => changed
|
||||||
changed.add(treeWalk.getPathString());
|
changed.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// in repo, not in index => removed
|
// in repo, not in index => removed
|
||||||
removed.add(treeWalk.getPathString());
|
removed.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
if (workingTreeIterator != null)
|
if (workingTreeIterator != null)
|
||||||
untracked.add(treeWalk.getPathString());
|
untracked.add(treeWalk.getPathString());
|
||||||
}
|
}
|
||||||
|
@ -215,13 +212,11 @@ public boolean diff() throws IOException {
|
||||||
if (dirCacheIterator != null) {
|
if (dirCacheIterator != null) {
|
||||||
// not in repo, in index => added
|
// not in repo, in index => added
|
||||||
added.add(treeWalk.getPathString());
|
added.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
} else {
|
} else {
|
||||||
// not in repo, not in index => untracked
|
// not in repo, not in index => untracked
|
||||||
if (workingTreeIterator != null
|
if (workingTreeIterator != null
|
||||||
&& !workingTreeIterator.isEntryIgnored()) {
|
&& !workingTreeIterator.isEntryIgnored()) {
|
||||||
untracked.add(treeWalk.getPathString());
|
untracked.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -230,18 +225,22 @@ public boolean diff() throws IOException {
|
||||||
if (workingTreeIterator == null) {
|
if (workingTreeIterator == null) {
|
||||||
// in index, not in workdir => missing
|
// in index, not in workdir => missing
|
||||||
missing.add(treeWalk.getPathString());
|
missing.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
} else {
|
} else {
|
||||||
if (workingTreeIterator.isModified(
|
if (workingTreeIterator.isModified(
|
||||||
dirCacheIterator.getDirCacheEntry(), true)) {
|
dirCacheIterator.getDirCacheEntry(), true)) {
|
||||||
// in index, in workdir, content differs => modified
|
// in index, in workdir, content differs => modified
|
||||||
modified.add(treeWalk.getPathString());
|
modified.add(treeWalk.getPathString());
|
||||||
changesExist = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return changesExist;
|
|
||||||
|
if (added.isEmpty() && changed.isEmpty() && removed.isEmpty()
|
||||||
|
&& missing.isEmpty() && modified.isEmpty()
|
||||||
|
&& untracked.isEmpty())
|
||||||
|
return false;
|
||||||
|
else
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
Loading…
Reference in New Issue