Use the HTTP status code in ServiceMayNotContinueException
Change-Id: I7204e764369cdede4295abed861e52fc51324ab7
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java b/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
index 51e248e..7e41078 100644
--- a/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
+++ b/gitiles-servlet/src/main/java/com/google/gitiles/ViewFilter.java
@@ -29,6 +29,7 @@
import javax.servlet.http.HttpServletResponse;
import org.eclipse.jgit.http.server.ServletUtils;
import org.eclipse.jgit.http.server.glue.WrappedRequest;
+import org.eclipse.jgit.transport.ServiceMayNotContinueException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -103,6 +104,9 @@
GitilesView.Builder view;
try {
view = parse(req);
+ } catch (ServiceMayNotContinueException e) {
+ res.setStatus(e.getStatusCode());
+ return;
} catch (IOException err) {
String name = urls.getHostName(req);
log.warn("Cannot parse view" + (name != null ? " for " + name : ""), err);