diff --git a/plugins/scm-git-plugin/src/main/java/sonia/scm/web/GitRepositoryViewer.java b/plugins/scm-git-plugin/src/main/java/sonia/scm/web/GitRepositoryViewer.java
index 6aebd0835a..c1ce6e91aa 100644
--- a/plugins/scm-git-plugin/src/main/java/sonia/scm/web/GitRepositoryViewer.java
+++ b/plugins/scm-git-plugin/src/main/java/sonia/scm/web/GitRepositoryViewer.java
@@ -35,6 +35,8 @@ package sonia.scm.web;
//~--- non-JDK imports --------------------------------------------------------
+import org.apache.commons.lang.StringEscapeUtils;
+
import org.eclipse.jgit.api.Git;
import org.eclipse.jgit.api.errors.NoHeadException;
import org.eclipse.jgit.lib.PersonIdent;
@@ -100,10 +102,17 @@ public class GitRepositoryViewer
if (!repository.getAllRefs().isEmpty())
{
Git git = new Git(repository);
+ int c = 0;
for (RevCommit commit : git.log().call())
{
appendCommit(sb, commit);
+ c++;
+
+ if (c > logSize)
+ {
+ break;
+ }
}
}
@@ -128,6 +137,34 @@ public class GitRepositoryViewer
}
}
+ //~--- get methods ----------------------------------------------------------
+
+ /**
+ * Method description
+ *
+ *
+ * @return
+ */
+ public int getLogSize()
+ {
+ return logSize;
+ }
+
+ //~--- set methods ----------------------------------------------------------
+
+ /**
+ * Method description
+ *
+ *
+ * @param logSize
+ */
+ public void setLogSize(int logSize)
+ {
+ this.logSize = logSize;
+ }
+
+ //~--- methods --------------------------------------------------------------
+
/**
* Method description
*
@@ -152,11 +189,17 @@ public class GitRepositoryViewer
if (Util.isNotEmpty(name))
{
- sb.append(name);
+ sb.append(StringEscapeUtils.escapeHtml(name));
}
}
- sb.append("| ").append(commit.getFullMessage());
+ sb.append(" | ");
+ sb.append(StringEscapeUtils.escapeHtml(commit.getFullMessage()));
sb.append(" | ");
}
+
+ //~--- fields ---------------------------------------------------------------
+
+ /** Field description */
+ private int logSize = 25;
}