mirror of
https://github.com/moparisthebest/k-9
synced 2024-12-25 00:58:50 -05:00
Deal with potential NPEs if folders aren't set up, as happens on new
accounts
This commit is contained in:
parent
098851684f
commit
24d03ce662
@ -585,33 +585,30 @@ public class LocalStore extends Store implements Serializable
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
String baseQuery = "SELECT SUM(unread_count), SUM(flagged_count) FROM folders WHERE ( name != ? AND name != ? AND name != ? AND name != ? AND name != ? ) ";
|
String baseQuery = "SELECT SUM(unread_count), SUM(flagged_count) FROM folders WHERE ( name != ? AND name != ? AND name != ? AND name != ? AND name != ? ) ";
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (displayMode == Account.FolderMode.NONE)
|
if (displayMode == Account.FolderMode.NONE)
|
||||||
{
|
{
|
||||||
cursor = db.rawQuery(baseQuery+ "AND (name = ? )", new String[]
|
cursor = db.rawQuery(baseQuery+ "AND (name = ? )", new String[]
|
||||||
{
|
{
|
||||||
mAccount.getTrashFolderName(),
|
|
||||||
mAccount.getDraftsFolderName(),
|
|
||||||
mAccount.getSpamFolderName(),
|
|
||||||
mAccount.getOutboxFolderName(),
|
|
||||||
mAccount.getSentFolderName(),
|
|
||||||
|
|
||||||
|
|
||||||
|
mAccount.getTrashFolderName() != null ? mAccount.getTrashFolderName() : "" ,
|
||||||
|
mAccount.getDraftsFolderName() != null ? mAccount.getDraftsFolderName() : "",
|
||||||
|
mAccount.getSpamFolderName() != null ? mAccount.getSpamFolderName() : "",
|
||||||
|
mAccount.getOutboxFolderName() != null? mAccount.getOutboxFolderName() : "",
|
||||||
|
mAccount.getSentFolderName() != null ? mAccount.getSentFolderName() : "",
|
||||||
K9.INBOX
|
K9.INBOX
|
||||||
});
|
}
|
||||||
|
|
||||||
|
);
|
||||||
}
|
}
|
||||||
else if (displayMode == Account.FolderMode.FIRST_CLASS )
|
else if (displayMode == Account.FolderMode.FIRST_CLASS )
|
||||||
{
|
{
|
||||||
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class = ?)", new String[]
|
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class = ?)", new String[]
|
||||||
{
|
{
|
||||||
|
mAccount.getTrashFolderName() != null ? mAccount.getTrashFolderName() : "" ,
|
||||||
mAccount.getTrashFolderName(),
|
mAccount.getDraftsFolderName() != null ? mAccount.getDraftsFolderName() : "",
|
||||||
mAccount.getDraftsFolderName(),
|
mAccount.getSpamFolderName() != null ? mAccount.getSpamFolderName() : "",
|
||||||
mAccount.getSpamFolderName(),
|
mAccount.getOutboxFolderName() != null? mAccount.getOutboxFolderName() : "",
|
||||||
mAccount.getOutboxFolderName(),
|
mAccount.getSentFolderName() != null ? mAccount.getSentFolderName() : "",
|
||||||
mAccount.getSentFolderName(),
|
|
||||||
K9.INBOX, Folder.FolderClass.FIRST_CLASS.name()
|
K9.INBOX, Folder.FolderClass.FIRST_CLASS.name()
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -621,11 +618,11 @@ public class LocalStore extends Store implements Serializable
|
|||||||
{
|
{
|
||||||
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class = ? OR display_class = ? )", new String[]
|
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class = ? OR display_class = ? )", new String[]
|
||||||
{
|
{
|
||||||
mAccount.getTrashFolderName(),
|
mAccount.getTrashFolderName() != null ? mAccount.getTrashFolderName() : "" ,
|
||||||
mAccount.getDraftsFolderName(),
|
mAccount.getDraftsFolderName() != null ? mAccount.getDraftsFolderName() : "",
|
||||||
mAccount.getSpamFolderName(),
|
mAccount.getSpamFolderName() != null ? mAccount.getSpamFolderName() : "",
|
||||||
mAccount.getOutboxFolderName(),
|
mAccount.getOutboxFolderName() != null? mAccount.getOutboxFolderName() : "",
|
||||||
mAccount.getSentFolderName(),
|
mAccount.getSentFolderName() != null ? mAccount.getSentFolderName() : "",
|
||||||
K9.INBOX, Folder.FolderClass.FIRST_CLASS.name(), Folder.FolderClass.SECOND_CLASS.name()
|
K9.INBOX, Folder.FolderClass.FIRST_CLASS.name(), Folder.FolderClass.SECOND_CLASS.name()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -634,11 +631,11 @@ public class LocalStore extends Store implements Serializable
|
|||||||
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class != ?)", new String[]
|
cursor = db.rawQuery(baseQuery + " AND ( name = ? OR display_class != ?)", new String[]
|
||||||
{
|
{
|
||||||
|
|
||||||
mAccount.getTrashFolderName(),
|
mAccount.getTrashFolderName() != null ? mAccount.getTrashFolderName() : "" ,
|
||||||
mAccount.getDraftsFolderName(),
|
mAccount.getDraftsFolderName() != null ? mAccount.getDraftsFolderName() : "",
|
||||||
mAccount.getSpamFolderName(),
|
mAccount.getSpamFolderName() != null ? mAccount.getSpamFolderName() : "",
|
||||||
mAccount.getOutboxFolderName(),
|
mAccount.getOutboxFolderName() != null? mAccount.getOutboxFolderName() : "",
|
||||||
mAccount.getSentFolderName(),
|
mAccount.getSentFolderName() != null ? mAccount.getSentFolderName() : "",
|
||||||
K9.INBOX, Folder.FolderClass.SECOND_CLASS.name()
|
K9.INBOX, Folder.FolderClass.SECOND_CLASS.name()
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
@ -647,12 +644,11 @@ public class LocalStore extends Store implements Serializable
|
|||||||
cursor = db.rawQuery(baseQuery, new String[]
|
cursor = db.rawQuery(baseQuery, new String[]
|
||||||
{
|
{
|
||||||
|
|
||||||
mAccount.getTrashFolderName(),
|
mAccount.getTrashFolderName() != null ? mAccount.getTrashFolderName() : "" ,
|
||||||
mAccount.getDraftsFolderName(),
|
mAccount.getDraftsFolderName() != null ? mAccount.getDraftsFolderName() : "",
|
||||||
mAccount.getSpamFolderName(),
|
mAccount.getSpamFolderName() != null ? mAccount.getSpamFolderName() : "",
|
||||||
mAccount.getOutboxFolderName(),
|
mAccount.getOutboxFolderName() != null? mAccount.getOutboxFolderName() : "",
|
||||||
mAccount.getSentFolderName()
|
mAccount.getSentFolderName() != null ? mAccount.getSentFolderName() : "",
|
||||||
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Loading…
Reference in New Issue
Block a user