Fixed duplicate signature images

This commit is contained in:
M66B 2020-08-16 16:24:50 +02:00
parent 4b759794a2
commit c471727f3c
2 changed files with 16 additions and 13 deletions

View File

@ -4449,7 +4449,7 @@ public class FragmentCompose extends FragmentBase {
if (identity.unicode) if (identity.unicode)
props.put("mail.mime.allowutf8", "true"); props.put("mail.mime.allowutf8", "true");
Session isession = Session.getInstance(props, null); Session isession = Session.getInstance(props, null);
Message imessage = MessageHelper.from(context, draft, identity, isession, true); Message imessage = MessageHelper.from(context, draft, identity, isession, false);
File file = draft.getRawFile(context); File file = draft.getRawFile(context);
try (OutputStream os = new BufferedOutputStream(new FileOutputStream(file))) { try (OutputStream os = new BufferedOutputStream(new FileOutputStream(file))) {

View File

@ -557,19 +557,18 @@ public class MessageHelper {
Document document = JsoupEx.parse(message.getFile(context)); Document document = JsoupEx.parse(message.getFile(context));
// When sending message // When sending message
if (identity != null) { if (identity != null && send) {
if (send) { for (Element child : document.body().children())
for (Element child : document.body().children()) if (!TextUtils.isEmpty(child.text()) &&
if (!TextUtils.isEmpty(child.text()) && TextUtils.isEmpty(child.attr("fairemail"))) {
TextUtils.isEmpty(child.attr("fairemail"))) { String style = HtmlHelper.mergeStyles(
String style = HtmlHelper.mergeStyles( "font-family:" + compose_font, child.attr("style"));
"font-family:" + compose_font, child.attr("style")); child.attr("style", style);
child.attr("style", style); }
} document.select("div[fairemail=signature]").removeAttr("fairemail");
document.select("div[fairemail=signature]").removeAttr("fairemail"); document.select("div[fairemail=reference]").removeAttr("fairemail");
document.select("div[fairemail=reference]").removeAttr("fairemail");
}
boolean save = false;
DB db = DB.getInstance(context); DB db = DB.getInstance(context);
try { try {
db.beginTransaction(); db.beginTransaction();
@ -615,6 +614,7 @@ public class MessageHelper {
attachments.add(attachment); attachments.add(attachment);
img.attr("src", "cid:" + cid); img.attr("src", "cid:" + cid);
save = true;
} }
db.setTransactionSuccessful(); db.setTransactionSuccessful();
@ -623,6 +623,9 @@ public class MessageHelper {
} finally { } finally {
db.endTransaction(); db.endTransaction();
} }
if (save)
Helper.writeText(message.getFile(context), document.html());
} }
// multipart/mixed // multipart/mixed