diff options
author | Johannes Schindelin <Johannes.Schindelin@gmx.de> | 2006-07-26 21:59:08 +0200 |
---|---|---|
committer | Junio C Hamano <junkio@cox.net> | 2006-07-26 13:03:01 -0700 |
commit | 2c3cff49301c44767c72391cb5288aa0d10563a9 (patch) | |
tree | 3994ecbcada1eed78aff74852b9f5a8ef33304cb /git-cvsserver.perl | |
parent | a1dad607fa5227c844c0f8ab180b811d23792c02 (diff) | |
download | git-2c3cff49301c44767c72391cb5288aa0d10563a9.tar.gz git-2c3cff49301c44767c72391cb5288aa0d10563a9.tar.xz |
git-cvsserver: support multiline commit messages
Earlier, cvsserver barfed when you tried to check in files with a
multiline commit message.
That is what Argumentx is for... Argument: lines can be followed by
several Argumentx: lines, which means they should be appended.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
Signed-off-by: Junio C Hamano <junkio@cox.net>
Diffstat (limited to 'git-cvsserver.perl')
-rwxr-xr-x | git-cvsserver.perl | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/git-cvsserver.perl b/git-cvsserver.perl index 0bbd871c1..5b73837bb 100755 --- a/git-cvsserver.perl +++ b/git-cvsserver.perl @@ -547,12 +547,15 @@ sub req_Argument { my ( $cmd, $data ) = @_; - # TODO : Not quite sure how Argument and Argumentx differ, but I assume - # it's for multi-line arguments ... somehow ... + # Argumentx means: append to last Argument (with a newline in front) $log->debug("$cmd : $data"); - push @{$state->{arguments}}, $data; + if ( $cmd eq 'Argumentx') { + ${$state->{arguments}}[$#{$state->{arguments}}] .= "\n" . $data; + } else { + push @{$state->{arguments}}, $data; + } } # expand-modules \n |