Details
-
Bug
-
Resolution: Fixed
-
Low
-
3.0.0, 3.8.0
-
None
-
None
Description
Seen for git.
If a part of the blames comes from a revision that has been excluded, this might result in a NullPointerException, with a stack like:
java.lang.NullPointerException at com.cenqua.fisheye.vis.BlameColourer.process(BlameColourer.java:37) at com.cenqua.fisheye.vis.AgeBlameColourer.process(AgeBlameColourer.java:42) at com.cenqua.fisheye.vis.AnnotationColourerFactory.create(AnnotationColourerFactory.java:33) at com.cenqua.fisheye.web.ViewFileAction.doChart(ViewFileAction.java:560) at com.cenqua.fisheye.web.ViewFileAction.handleFileRequest(ViewFileAction.java:216) at com.cenqua.fisheye.web.ViewFileAction.handleRequest(ViewFileAction.java:145) at com.cenqua.fisheye.web.BaseAction.processRequest(BaseAction.java:255) at com.cenqua.fisheye.web.ActionDispatcherServlet.doIt(ActionDispatcherServlet.java:241) at com.cenqua.fisheye.web.ActionDispatcherServlet.doGet(ActionDispatcherServlet.java:72) at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)
The root cause is that the blame is saved with a revision==-1, when indexing. When retrieving the blame this is not handled, causing the error.
We should probably either create dummy revisions, handle the revision not being there, or fallback to SCM in this case.