summaryrefslogtreecommitdiff
path: root/src/pkg/patch/patch.go
diff options
context:
space:
mode:
authorRuss Cox <rsc@golang.org>2010-01-26 17:49:33 -0800
committerRuss Cox <rsc@golang.org>2010-01-26 17:49:33 -0800
commit529a6a2acdb3300a45f9287d4b26893aa31d0d97 (patch)
tree72605665a3a4ba9c892d4ef9a9462d369e2c7f76 /src/pkg/patch/patch.go
parentb9c826a64c403cb550624006a6345b379637670b (diff)
downloadgolang-529a6a2acdb3300a45f9287d4b26893aa31d0d97.tar.gz
patch: handle text diffs from git
R=r CC=golang-dev http://codereview.appspot.com/194094
Diffstat (limited to 'src/pkg/patch/patch.go')
-rw-r--r--src/pkg/patch/patch.go5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/pkg/patch/patch.go b/src/pkg/patch/patch.go
index 04ecd9d24..9d9aa1b48 100644
--- a/src/pkg/patch/patch.go
+++ b/src/pkg/patch/patch.go
@@ -207,7 +207,7 @@ func Parse(text []byte) (*Set, os.Error) {
p.Diff = diff
break
}
- if hasPrefix(l, "index ") || hasPrefix(l, "GIT binary patch") {
+ if hasPrefix(l, "GIT binary patch") || (hasPrefix(l, "index ") && !hasPrefix(raw, "--- ")) {
diff, err := ParseGitBinary(oldraw)
if err != nil {
return nil, err
@@ -215,6 +215,9 @@ func Parse(text []byte) (*Set, os.Error) {
p.Diff = diff
break
}
+ if hasPrefix(l, "index ") {
+ continue
+ }
return nil, SyntaxError("unexpected patch header line: " + string(l))
}
if p.Diff == nil {