Browse Source

Fixes truncation detection with dupes

main
Eric Amodio 6 years ago
parent
commit
2c32a4b0c6
1 changed files with 7 additions and 1 deletions
  1. +7
    -1
      src/git/parsers/logParser.ts

+ 7
- 1
src/git/parsers/logParser.ts View File

@ -61,6 +61,7 @@ export class GitLogParser {
const authors: Map<string, GitAuthor> = new Map(); const authors: Map<string, GitAuthor> = new Map();
const commits: Map<string, GitLogCommit> = new Map(); const commits: Map<string, GitLogCommit> = new Map();
let truncationCount = maxCount;
while (true) { while (true) {
next = lines.next(); next = lines.next();
@ -207,6 +208,11 @@ export class GitLogParser {
if (commit === undefined) { if (commit === undefined) {
i++; i++;
} }
else if (truncationCount) {
// Since this matches an existing commit it will be skipped, so reduce our truncationCount to ensure accurate truncation detection
truncationCount--;
}
recentCommit = GitLogParser.parseEntry( recentCommit = GitLogParser.parseEntry(
entry, entry,
commit, commit,
@ -231,7 +237,7 @@ export class GitLogParser {
count: i, count: i,
maxCount: maxCount, maxCount: maxCount,
range: range, range: range,
truncated: Boolean(maxCount && i >= maxCount && maxCount !== 1)
truncated: Boolean(truncationCount && i >= truncationCount && truncationCount !== 1)
} as GitLog; } as GitLog;
} }

Loading…
Cancel
Save