From d80588d99511fac16495f8eaafa50e01a6b98995 Mon Sep 17 00:00:00 2001
From: guriguri <guriguri.kr@gmail.com>
Date: Wed, 31 Jul 2013 11:20:49 -0400
Subject: [PATCH] apply PageParameters(final Map<String, ?> parameterMap), encode filename of Content-Disposition

---
 src/main/java/com/gitblit/git/ReceiveHook.java |   17 +++++++++++++++++
 1 files changed, 17 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/gitblit/git/ReceiveHook.java b/src/main/java/com/gitblit/git/ReceiveHook.java
index e0b7798..d75a238 100644
--- a/src/main/java/com/gitblit/git/ReceiveHook.java
+++ b/src/main/java/com/gitblit/git/ReceiveHook.java
@@ -36,6 +36,7 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import com.gitblit.Constants;
 import com.gitblit.Constants.AccessRestrictionType;
 import com.gitblit.GitBlit;
 import com.gitblit.Keys;
@@ -44,6 +45,7 @@
 import com.gitblit.models.UserModel;
 import com.gitblit.utils.ArrayUtils;
 import com.gitblit.utils.ClientLogger;
+import com.gitblit.utils.CommitCache;
 import com.gitblit.utils.JGitUtils;
 import com.gitblit.utils.RefLogUtils;
 import com.gitblit.utils.StringUtils;
@@ -186,6 +188,21 @@
 				return;
 			}
 		}
+		
+		// reset branch commit cache on REWIND and DELETE
+		for (ReceiveCommand cmd : commands) {
+			String ref = cmd.getRefName();
+			if (ref.startsWith(Constants.R_HEADS)) {
+				switch (cmd.getType()) {
+				case UPDATE_NONFASTFORWARD:
+				case DELETE:
+					CommitCache.instance().clear(repository.name, ref);
+					break;
+				default:
+					break;
+				}
+			}
+		}
 
 		Set<String> scripts = new LinkedHashSet<String>();
 		scripts.addAll(GitBlit.self().getPreReceiveScriptsInherited(repository));

--
Gitblit v1.9.1