mirror of
https://github.com/moparisthebest/k-9
synced 2024-12-25 09:08:49 -05:00
Split out deleteAttachment to avoid an extra SQL call if we can.
This commit is contained in:
parent
38c31db8f6
commit
54a4c84afa
@ -2261,6 +2261,47 @@ public class LocalStore extends Store implements Serializable
|
||||
return PERMANENT_FLAGS;
|
||||
}
|
||||
|
||||
|
||||
private void deleteAttachments(long messageId) throws MessagingException
|
||||
{
|
||||
open(OpenMode.READ_WRITE);
|
||||
Cursor attachmentsCursor = null;
|
||||
try
|
||||
{
|
||||
attachmentsCursor = mDb.query(
|
||||
"attachments",
|
||||
new String[] { "id" },
|
||||
"message_id = ?",
|
||||
new String[] { Long.toString(messageId) },
|
||||
null,
|
||||
null,
|
||||
null);
|
||||
while (attachmentsCursor.moveToNext())
|
||||
{
|
||||
long attachmentId = attachmentsCursor.getLong(0);
|
||||
try
|
||||
{
|
||||
File file = new File(mAttachmentsDir, Long.toString(attachmentId));
|
||||
if (file.exists())
|
||||
{
|
||||
file.delete();
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (attachmentsCursor != null)
|
||||
{
|
||||
attachmentsCursor.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void deleteAttachments(String uid) throws MessagingException
|
||||
{
|
||||
open(OpenMode.READ_WRITE);
|
||||
@ -2278,41 +2319,8 @@ public class LocalStore extends Store implements Serializable
|
||||
while (messagesCursor.moveToNext())
|
||||
{
|
||||
long messageId = messagesCursor.getLong(0);
|
||||
Cursor attachmentsCursor = null;
|
||||
try
|
||||
{
|
||||
attachmentsCursor = mDb.query(
|
||||
"attachments",
|
||||
new String[] { "id" },
|
||||
"message_id = ?",
|
||||
new String[] { Long.toString(messageId) },
|
||||
null,
|
||||
null,
|
||||
null);
|
||||
while (attachmentsCursor.moveToNext())
|
||||
{
|
||||
long attachmentId = attachmentsCursor.getLong(0);
|
||||
try
|
||||
{
|
||||
File file = new File(mAttachmentsDir, Long.toString(attachmentId));
|
||||
if (file.exists())
|
||||
{
|
||||
file.delete();
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
deleteAttachments(messageId);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
{
|
||||
if (attachmentsCursor != null)
|
||||
{
|
||||
attachmentsCursor.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
finally
|
||||
|
Loading…
Reference in New Issue
Block a user