mirror of https://github.com/M66B/FairEmail.git
Skip decoding attachment for outgoing messages
This commit is contained in:
parent
56a4591d9d
commit
57c19b05f3
|
@ -2078,7 +2078,7 @@ class Core {
|
|||
MessageHelper.MessageParts parts = helper.getMessageParts();
|
||||
|
||||
// Download attachment
|
||||
parts.downloadAttachment(context, attachment);
|
||||
parts.downloadAttachment(context, attachment, folder);
|
||||
|
||||
if (attachment.size != null)
|
||||
EntityLog.log(context, "Operation attachment size=" + attachment.size);
|
||||
|
@ -2137,7 +2137,7 @@ class Core {
|
|||
MessageHelper.MessageParts parts = helper.getMessageParts();
|
||||
|
||||
// Download attachment
|
||||
parts.downloadAttachment(context, attachment);
|
||||
parts.downloadAttachment(context, attachment, folder);
|
||||
|
||||
if (attachment.size != null)
|
||||
EntityLog.log(context, "Operation attachment size=" + attachment.size);
|
||||
|
@ -3386,7 +3386,7 @@ class Core {
|
|||
try {
|
||||
for (EntityAttachment attachment : parts.getAttachments())
|
||||
if (attachment.subsequence == null)
|
||||
parts.downloadAttachment(context, attachment);
|
||||
parts.downloadAttachment(context, attachment, folder);
|
||||
} catch (Throwable ex) {
|
||||
Log.w(ex);
|
||||
}
|
||||
|
@ -5155,7 +5155,7 @@ class Core {
|
|||
if (state.getNetworkState().isUnmetered() ||
|
||||
(attachment.size != null && attachment.size < maxSize))
|
||||
try {
|
||||
parts.downloadAttachment(context, attachment);
|
||||
parts.downloadAttachment(context, attachment, folder);
|
||||
if (stats != null && attachment.size != null)
|
||||
stats.attachments += attachment.size;
|
||||
} catch (Throwable ex) {
|
||||
|
|
|
@ -8658,7 +8658,7 @@ public class FragmentMessages extends FragmentBase
|
|||
remote.sequence = index + 1;
|
||||
remote.id = db.attachment().insertAttachment(remote);
|
||||
try {
|
||||
parts.downloadAttachment(context, index, remote);
|
||||
parts.downloadAttachment(context, index, remote, null);
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
}
|
||||
|
@ -9369,7 +9369,7 @@ public class FragmentMessages extends FragmentBase
|
|||
Log.i("s/mime attachment=" + remote);
|
||||
|
||||
try {
|
||||
parts.downloadAttachment(context, index, remote);
|
||||
parts.downloadAttachment(context, index, remote, null);
|
||||
} catch (Throwable ex) {
|
||||
Log.e(ex);
|
||||
}
|
||||
|
|
|
@ -3952,7 +3952,7 @@ public class MessageHelper {
|
|||
return null;
|
||||
}
|
||||
|
||||
void downloadAttachment(Context context, EntityAttachment local) throws IOException, MessagingException {
|
||||
void downloadAttachment(Context context, EntityAttachment local, EntityFolder folder) throws IOException, MessagingException {
|
||||
List<EntityAttachment> remotes = getAttachments();
|
||||
|
||||
// Some servers order attachments randomly
|
||||
|
@ -4014,10 +4014,10 @@ public class MessageHelper {
|
|||
if (index < 0)
|
||||
throw new IllegalArgumentException("Attachment not found");
|
||||
|
||||
downloadAttachment(context, index, local);
|
||||
downloadAttachment(context, index, local, folder);
|
||||
}
|
||||
|
||||
void downloadAttachment(Context context, int index, EntityAttachment local) throws MessagingException, IOException {
|
||||
void downloadAttachment(Context context, int index, EntityAttachment local, EntityFolder folder) throws MessagingException, IOException {
|
||||
Log.i("downloading attachment id=" + local.id + " index=" + index + " " + local);
|
||||
|
||||
// Get data
|
||||
|
@ -4075,20 +4075,22 @@ public class MessageHelper {
|
|||
throw ex;
|
||||
}
|
||||
|
||||
if ("message/rfc822".equals(local.type))
|
||||
decodeRfc822(context, local, 1);
|
||||
if (folder == null || !EntityFolder.isOutgoing(folder.type)) {
|
||||
if ("message/rfc822".equals(local.type))
|
||||
decodeRfc822(context, local, 1);
|
||||
|
||||
else if ("text/calendar".equals(local.type) && ActivityBilling.isPro(context))
|
||||
decodeICalendar(context, local);
|
||||
else if ("text/calendar".equals(local.type) && ActivityBilling.isPro(context))
|
||||
decodeICalendar(context, local);
|
||||
|
||||
else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && local.isCompressed()) {
|
||||
decodeCompressed(context, local, 1);
|
||||
else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O && local.isCompressed()) {
|
||||
decodeCompressed(context, local, 1);
|
||||
|
||||
} else if (Helper.isTnef(local.type, local.name))
|
||||
decodeTNEF(context, local, 1);
|
||||
} else if (Helper.isTnef(local.type, local.name))
|
||||
decodeTNEF(context, local, 1);
|
||||
|
||||
else if ("msg".equalsIgnoreCase(Helper.getExtension(local.name)))
|
||||
decodeOutlook(context, local, 1);
|
||||
else if ("msg".equalsIgnoreCase(Helper.getExtension(local.name)))
|
||||
decodeOutlook(context, local, 1);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue