From 42dd1d3517f0a6e8f1e7b52de017673d40cd56ca Mon Sep 17 00:00:00 2001 From: Ulli Hafner Date: Mon, 19 Aug 2024 11:21:29 +0200 Subject: [PATCH] [JENKINS-73524] When analyzing git results, log and ignore exceptions. --- .../plugins/forensics/git/miner/CommitAnalyzer.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/plugin/src/main/java/io/jenkins/plugins/forensics/git/miner/CommitAnalyzer.java b/plugin/src/main/java/io/jenkins/plugins/forensics/git/miner/CommitAnalyzer.java index 0aee5c47..7ffe496d 100644 --- a/plugin/src/main/java/io/jenkins/plugins/forensics/git/miner/CommitAnalyzer.java +++ b/plugin/src/main/java/io/jenkins/plugins/forensics/git/miner/CommitAnalyzer.java @@ -3,6 +3,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.List; +import java.util.Objects; import org.apache.commons.lang3.StringUtils; import org.eclipse.jgit.api.Git; @@ -62,11 +63,11 @@ private CommitDiffItem createFromRevCommit(final RevCommit newCommit) { private String getAuthor(final RevCommit commit) { PersonIdent author = commit.getAuthorIdent(); if (author != null) { - return StringUtils.defaultString(author.getEmailAddress(), author.getName()); + return Objects.toString(author.getEmailAddress(), author.getName()); } PersonIdent committer = commit.getCommitterIdent(); if (committer != null) { - return StringUtils.defaultString(committer.getEmailAddress(), committer.getName()); + return Objects.toString(committer.getEmailAddress(), committer.getName()); } return StringUtils.EMPTY; } @@ -102,5 +103,10 @@ static AbstractTreeIterator createTreeIteratorFor(final String commitId, final R walk.dispose(); return treeParser; } + catch (IOException e) { + logger.logError("Could not create tree iterator for commit ID " + commitId, e); + + return new EmptyTreeIterator(); + } } }