git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] git-svn: fix signed commit parsing

From
Nicolas Vigier <boklm@mars-attacks.org>
Date
Sep 30, 2013, 14:46 UTC
Message-ID
<1380552374-26103-1-git-send-email-boklm@mars-attacks.org>

When parsing a commit object, git-svn wrongly think that a line containing spaces means the end of headers and the start of the commit message. In case of signed commit, the gpgsig entry contains a line with one space, so "git svn dcommit" will include part of the signature in the commit message.

An example of such problem : http://svnweb.mageia.org/treasurer?view=revision&revision=86

This commit changes the regex to only match an empty line as separator between the headers and the commit message.

Signed-off-by: Nicolas Vigier <boklm@mars-attacks.org>
---
 git-svn.perl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/git-svn.perl b/git-svn.perl
index ff1ce3d..1823db1 100755
--- a/git-svn.perl
+++ b/git-svn.perl
@@ -1759,7 +1759,7 @@ sub get_commit_entry {
 		my $msgbuf = "";
 		while (<$msg_fh>) {
 			if (!$in_msg) {
-				$in_msg = 1 if (/^\s*$/);
+				$in_msg = 1 if (/^$/);
 				$author = $1 if (/^author (.*>)/);
 			} elsif (/^git-svn-id: /) {
 				# skip this for now, we regenerate the
-- 
1.8.4
Next: Jonathan Nieder
Message 1 of 3 in “git-svn: fix signed commit parsing”
  1. git-svn: fix signed commit parsingNicolas Vigier, Sep 30, 2013
  2. Jonathan NiederSep 30, 2013
  3. Eric WongOct 10, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.