Stop unintended re-encoding of author names from UTF-8 to ASCII
authorSebastian Pipping <sebastian@pipping.org>
Wed, 8 May 2013 22:45:27 +0000 (00:45 +0200)
committerTorgny Nyblom <nyblom@kde.org>
Fri, 17 May 2013 16:49:48 +0000 (18:49 +0200)
commit4a1e11c6ceb17b764c613778d8ce408f0aa28a48
tree455cb6bada50d42d5b7736ade1bd05ade71cdf73
parentb5c3d3aa55621c44db439e4a73884e0d0bf9612c
Stop unintended re-encoding of author names from UTF-8 to ASCII

To see the bug in action, use an author map with umlauts, e.g.

  nickname = Hällo Wörld from UTF-8 <mail@example.org>

and check "git log" after the conversion.

What is happening?
QByteArray "author" is first decoded as UTF-8 into a QString.
That QString is passed to QByteArray::append(const QString &)
which internally encodes the QString to ASCII byte data using
QString::toAscii().  "git fast-import" expects UTF-8 input
from us, so the original QByteArray with UTF-8 content is just
what we need.
src/repository.cpp