From 31d613c01d313e14cc57fcb183f7489352ff6aa5 Mon Sep 17 00:00:00 2001
From: Unknown <joe2010xtmf@163.com>
Date: Sat, 12 Apr 2014 01:45:43 -0400
Subject: [PATCH 1/2] Mirror fix

---
 models/git.go            | 6 ++++++
 routers/repo/commit.go   | 1 +
 templates/repo/diff.tmpl | 4 ++++
 3 files changed, 11 insertions(+)

diff --git a/models/git.go b/models/git.go
index f20e663b1..10e8ca48b 100644
--- a/models/git.go
+++ b/models/git.go
@@ -300,6 +300,12 @@ func ParsePatch(reader io.Reader) (*Diff, error) {
 		}
 
 		i = i + 1
+
+		// Diff data too large.
+		if i == 10000 {
+			return &Diff{}, nil
+		}
+
 		if line == "" {
 			continue
 		}
diff --git a/routers/repo/commit.go b/routers/repo/commit.go
index fed1a6bad..dbfd9af29 100644
--- a/routers/repo/commit.go
+++ b/routers/repo/commit.go
@@ -103,6 +103,7 @@ func Diff(ctx *middleware.Context, params martini.Params) {
 	ctx.Data["Title"] = commit.Message() + " ยท " + base.ShortSha(commitId)
 	ctx.Data["Commit"] = commit
 	ctx.Data["Diff"] = diff
+	ctx.Data["DiffNotAvailable"] = diff.NumFiles() == 0
 	ctx.Data["IsRepoToolbarCommits"] = true
 	ctx.Data["SourcePath"] = "/" + path.Join(userName, repoName, "src", commitId)
 	ctx.Data["RawPath"] = "/" + path.Join(userName, repoName, "raw", commitId)
diff --git a/templates/repo/diff.tmpl b/templates/repo/diff.tmpl
index a041284d0..796a8e94c 100644
--- a/templates/repo/diff.tmpl
+++ b/templates/repo/diff.tmpl
@@ -20,6 +20,9 @@
             </div>
         </div>
 
+        {{if .DiffNotAvailable}}
+        <h4>Diff Data Not Available.</h4>
+        {{else}}
         <div class="diff-detail-box diff-box">
             <a class="pull-right btn btn-default" data-toggle="collapse" data-target="#diff-files">Show Diff Stats</a>
             <p class="showing">
@@ -97,6 +100,7 @@
             </div>
         </div>
         {{end}}
+        {{end}}
     </div>
 </div>
 {{template "base/footer" .}}

From 794b457252b270ae452b3ea946d91b216f27ac5d Mon Sep 17 00:00:00 2001
From: Unknown <joe2010xtmf@163.com>
Date: Sat, 12 Apr 2014 01:47:59 -0400
Subject: [PATCH 2/2] Mirror fix

---
 models/git.go | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/models/git.go b/models/git.go
index 10e8ca48b..07f232977 100644
--- a/models/git.go
+++ b/models/git.go
@@ -302,7 +302,7 @@ func ParsePatch(reader io.Reader) (*Diff, error) {
 		i = i + 1
 
 		// Diff data too large.
-		if i == 10000 {
+		if i == 2000 {
 			return &Diff{}, nil
 		}