From 90c354f5760edde96d44556f3bc8e9e630777029 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 08 Apr 2014 00:09:31 -0400
Subject: [PATCH] Merged #40 "Fix intermittent NPE in getting commit date in RefModel"

---
 src/main/java/com/gitblit/models/RefModel.java |   15 ++++++++++++---
 1 files changed, 12 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/gitblit/models/RefModel.java b/src/main/java/com/gitblit/models/RefModel.java
index 6b031ed..02ba130 100644
--- a/src/main/java/com/gitblit/models/RefModel.java
+++ b/src/main/java/com/gitblit/models/RefModel.java
@@ -25,6 +25,8 @@
 import org.eclipse.jgit.revwalk.RevObject;
 import org.eclipse.jgit.revwalk.RevTag;
 
+import com.gitblit.utils.JGitUtils;
+
 /**
  * RefModel is a serializable model class that represents a tag or branch and
  * includes the referenced object.
@@ -50,11 +52,18 @@
 		if (referencedObject != null) {
 			if (referencedObject instanceof RevTag) {
 				RevTag tag = (RevTag) referencedObject;
-				if (tag.getTaggerIdent() != null) {
-					date = tag.getTaggerIdent().getWhen();
+				PersonIdent tagger = tag.getTaggerIdent();
+				if (tagger != null) {
+					date = tagger.getWhen();
 				}
 			} else if (referencedObject instanceof RevCommit) {
-				date = ((RevCommit) referencedObject).getCommitterIdent().getWhen();
+				RevCommit commit = (RevCommit) referencedObject;
+				PersonIdent committer = commit.getCommitterIdent();
+				if (committer != null) {
+					date = committer.getWhen();
+				} else {
+					date = JGitUtils.getCommitDate(commit);
+				}
 			}
 		}
 		return date;

--
Gitblit v1.9.1