From 270e9e762820833d6815e362034dc3f4809b6470 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Thu, 04 Sep 2014 14:59:05 -0400
Subject: [PATCH] Fix NPEs when handling referenced milestones that do not exist

---
 src/main/java/com/gitblit/wicket/pages/TicketPage.java |   15 +++++++++------
 1 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/main/java/com/gitblit/wicket/pages/TicketPage.java b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
index f5f63d2..b1f94a5 100644
--- a/src/main/java/com/gitblit/wicket/pages/TicketPage.java
+++ b/src/main/java/com/gitblit/wicket/pages/TicketPage.java
@@ -249,9 +249,12 @@
 			add(new Label("milestone"));
 		} else {
 			// link to milestone query
-			TicketMilestone milestone = app().tickets().getMilestone(repository, ticket.milestone);
+			TicketMilestone tm = app().tickets().getMilestone(repository, ticket.milestone);
+			if (tm == null) {
+				tm = new TicketMilestone(ticket.milestone);
+			}
 			PageParameters milestoneParameters;
-			if (milestone.isOpen()) {
+			if (tm.isOpen()) {
 				milestoneParameters = WicketUtils.newOpenTicketsParameter(repositoryName);
 			} else {
 				milestoneParameters = WicketUtils.newRepositoryParameter(repositoryName);
@@ -260,10 +263,10 @@
 			int progress = 0;
 			int open = 0;
 			int closed = 0;
-			if (milestone != null) {
-				progress = milestone.getProgress();
-				open = milestone.getOpenTickets();
-				closed = milestone.getClosedTickets();
+			if (tm != null) {
+				progress = tm.getProgress();
+				open = tm.getOpenTickets();
+				closed = tm.getClosedTickets();
 			}
 
 			Fragment milestoneProgress = new Fragment("milestone", "milestoneProgressFragment", this);

--
Gitblit v1.9.1