From: Eric Wong Date: Thu, 25 May 2017 02:24:16 +0000 (+0000) Subject: import: reset :raw mode for commit title (subject) X-Git-Tag: v1.0.0~64 X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=commitdiff_plain;h=6dd8be30a9aeefa550b05a4f298934fd37a25c2c;hp=e2c0e75a55e0df8e7a68b0cf7f078e9317e99ee2 import: reset :raw mode for commit title (subject) This was necessary for the presence of the 0xa0 byte(*) in the Subject: of the message at: http://blade.nagaokaut.ac.jp/ruby/ruby-core/3220 (*) That is 0xa0, not 0x0a ("\n"), so I wonder if the nibbles got swapped somehow. --- diff --git a/lib/PublicInbox/Import.pm b/lib/PublicInbox/Import.pm index 13671a4f..65da4ddf 100644 --- a/lib/PublicInbox/Import.pm +++ b/lib/PublicInbox/Import.pm @@ -191,11 +191,10 @@ sub add { binmode $w, ':utf8' or die "binmode :utf8 failed: $!"; print $w "commit $ref\nmark :$commit\n", "author $name <$email> $date\n", - "committer $self->{ident} ", now2822(), "\n", - "data ", (bytes::length($subject) + 1), "\n", - $subject, "\n\n" or wfail; + "committer $self->{ident} ", now2822(), "\n" or wfail; binmode $w, ':raw' or die "binmode :raw failed: $!"; - + print $w "data ", (bytes::length($subject) + 1), "\n", + $subject, "\n\n" or wfail; if ($tip ne '') { print $w 'from ', ($parent ? $parent : $tip), "\n" or wfail; }