summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Florian Weimer <fw@deneb.enyo.de>2008-08-31 17:05:09 +0200
committerLibravatar Eric Wong <normalperson@yhbt.net>2008-09-05 16:58:38 -0700
commit2d0c8accc3fa7de75d7cbe732873ce5a57379020 (patch)
tree49cd85640e0e077bffd54b5bceb5a7e478efdd11
parentMerge branch 'jc/maint-log-grep' (diff)
downloadtgif-2d0c8accc3fa7de75d7cbe732873ce5a57379020.tar.xz
git-svn: extract base blob in generate_diff
We need the base blob to compute a delta to be sent to the server. Signed-off-by: Florian Weimer <fw@deneb.enyo.de> Acked-by: Eric Wong <normalperson@yhbt.net>
-rwxr-xr-xgit-svn.perl7
1 files changed, 4 insertions, 3 deletions
diff --git a/git-svn.perl b/git-svn.perl
index 7a1d26db8b..0479f41b50 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -3380,11 +3380,12 @@ sub generate_diff {
while (<$diff_fh>) {
chomp $_; # this gets rid of the trailing "\0"
if ($state eq 'meta' && /^:(\d{6})\s(\d{6})\s
- $::sha1\s($::sha1)\s
+ ($::sha1)\s($::sha1)\s
([MTCRAD])\d*$/xo) {
push @mods, { mode_a => $1, mode_b => $2,
- sha1_b => $3, chg => $4 };
- if ($4 =~ /^(?:C|R)$/) {
+ sha1_a => $3, sha1_b => $4,
+ chg => $5 };
+ if ($5 =~ /^(?:C|R)$/) {
$state = 'file_a';
} else {
$state = 'file_b';