summaryrefslogtreecommitdiff
path: root/service/pixelated/adapter/mailstore/leap_mailstore.py
diff options
context:
space:
mode:
authorFolker Bernitt <fbernitt@thoughtworks.com>2015-08-10 14:51:55 +0200
committerFolker Bernitt <fbernitt@thoughtworks.com>2015-08-11 17:00:34 +0200
commitc00e4115f5bd205a0f65224dccd5e889e7cbf3b8 (patch)
tree971273abc8477b5f67b42242361c9021cf71b5fe /service/pixelated/adapter/mailstore/leap_mailstore.py
parentb8410e1e199a581155566c6c3b9d40dbda32b082 (diff)
Fixed unit and integration tests.
Diffstat (limited to 'service/pixelated/adapter/mailstore/leap_mailstore.py')
-rw-r--r--service/pixelated/adapter/mailstore/leap_mailstore.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/service/pixelated/adapter/mailstore/leap_mailstore.py b/service/pixelated/adapter/mailstore/leap_mailstore.py
index 8831ae84..a641c35b 100644
--- a/service/pixelated/adapter/mailstore/leap_mailstore.py
+++ b/service/pixelated/adapter/mailstore/leap_mailstore.py
@@ -13,6 +13,7 @@
#
# You should have received a copy of the GNU Affero General Public License
# along with Pixelated. If not, see <http://www.gnu.org/licenses/>.
+from email.header import decode_header
from uuid import uuid4
from leap.mail.adaptors.soledad import SoledadMailAdaptor
from twisted.internet import defer
@@ -64,9 +65,13 @@ class LeapMail(Mail):
@property
def raw(self):
- result = ''
+ result = u''
for k, v in self._headers.items():
- result += '%s: %s\n' % (k, v)
+ content, encoding = decode_header(v)[0]
+ if encoding:
+ result += '%s: %s\n' % (k, unicode(content, encoding=encoding))
+ else:
+ result += '%s: %s\n' % (k, v)
result += '\n'
if self._body: