From f1a07cb1e0af372b11ebc5d756aa3a22a1e1ddac Mon Sep 17 00:00:00 2001 From: revsuine Date: Thu, 14 Nov 2024 19:23:51 +0000 Subject: [PATCH] use message_from_string instead of message_from_bytes cause message_from_bytes bizarrely changes it back to base64 --- gpgmymail | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gpgmymail b/gpgmymail index 4329858..e7c6073 100755 --- a/gpgmymail +++ b/gpgmymail @@ -61,7 +61,7 @@ def decode_email(message: email.message.Message) -> email.message.Message: # string but i couldn't get it to work any other way # decoding needed: # as_string() gives us str, encode() gives us bytes - decoded_bytes = message.as_string().encode() + decoded_bytes = message.as_bytes() decoded_bytes = quopri.decodestring(decoded_bytes) # replace any instances of the Content-Transfer-Encoding header @@ -108,8 +108,10 @@ def decode_email(message: email.message.Message) -> email.message.Message: b'Content-Transfer-Encoding: base64', b'Content-Transfer-Encoding: 7bit' ) - - return email.message_from_bytes(decoded_bytes) + + # if i do message_from_bytes it bizarrely changes it back to base64? + # utf-8 has encoding issues so do latin1 + return email.message_from_string(decoded_bytes.decode("latin1")) def encrypt( message: email.message.Message,