From b5b4026628c50ffdfa3ceeb93badb613cdca18eb Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Tue, 03 May 2011 15:59:20 -0400
Subject: [PATCH] Drop new lines between table rows for Opera.
---
src/com/gitblit/wicket/pages/PatchPage.java | 39 ++++++++++++++++++++++++---------------
1 files changed, 24 insertions(+), 15 deletions(-)
diff --git a/src/com/gitblit/wicket/pages/PatchPage.java b/src/com/gitblit/wicket/pages/PatchPage.java
index 52790d6..62431d2 100644
--- a/src/com/gitblit/wicket/pages/PatchPage.java
+++ b/src/com/gitblit/wicket/pages/PatchPage.java
@@ -1,18 +1,16 @@
package com.gitblit.wicket.pages;
-import javax.servlet.http.HttpServletRequest;
-
import org.apache.wicket.PageParameters;
import org.apache.wicket.markup.html.WebPage;
import org.apache.wicket.markup.html.basic.Label;
-import org.apache.wicket.protocol.http.servlet.ServletWebRequest;
import org.eclipse.jgit.lib.Repository;
import org.eclipse.jgit.revwalk.RevCommit;
+import com.gitblit.GitBlit;
import com.gitblit.utils.JGitUtils;
-import com.gitblit.wicket.GitBlitWebApp;
+import com.gitblit.utils.StringUtils;
+import com.gitblit.wicket.GitBlitWebSession;
import com.gitblit.wicket.WicketUtils;
-
public class PatchPage extends WebPage {
@@ -20,27 +18,38 @@
super(params);
if (!params.containsKey("r")) {
- error("Repository not specified!");
+ GitBlitWebSession.get().cacheErrorMessage("Repository not specified!");
redirectToInterceptPage(new RepositoriesPage());
+ return;
}
+
final String repositoryName = WicketUtils.getRepositoryName(params);
- final String objectId = WicketUtils.getObject(params);
+ final String baseObjectId = WicketUtils.getBaseObjectId(params);
+ final String objectId = WicketUtils.getObject(params);
final String blobPath = WicketUtils.getPath(params);
- ServletWebRequest servletWebRequest = (ServletWebRequest) getRequest();
- HttpServletRequest req = servletWebRequest.getHttpServletRequest();
- req.getServerName();
-
- Repository r = GitBlitWebApp.get().getRepository(req, repositoryName);
+ Repository r = GitBlit.self().getRepository(repositoryName);
if (r == null) {
- error("Can not load repository " + repositoryName);
+ GitBlitWebSession.get().cacheErrorMessage("Can not load repository " + repositoryName);
redirectToInterceptPage(new RepositoriesPage());
return;
}
RevCommit commit = JGitUtils.getCommit(r, objectId);
- String patch = JGitUtils.getCommitPatch(r, commit, blobPath);
+ if (commit == null) {
+ GitBlitWebSession.get().cacheErrorMessage("Commit is null");
+ redirectToInterceptPage(new RepositoriesPage());
+ return;
+ }
+
+ String patch;
+ if (StringUtils.isEmpty(baseObjectId)) {
+ patch = JGitUtils.getCommitPatch(r, commit, blobPath);
+ } else {
+ RevCommit baseCommit = JGitUtils.getCommit(r, baseObjectId);
+ patch = JGitUtils.getCommitPatch(r, baseCommit, commit, blobPath);
+ }
add(new Label("patchText", patch));
r.close();
- }
+ }
}
--
Gitblit v1.9.1