1
0
mirror of https://github.com/Kopano-dev/kopano-ol-extension.git synced 2023-10-10 13:37:40 +02:00

[KOE-133] Added checks for null accounts and explorers, which happens when an email is sent through another application.

This commit is contained in:
Patrick Simpson 2017-08-02 12:16:01 +03:00
parent 18eb719721
commit d00fcffcf8
4 changed files with 12 additions and 3 deletions

View File

@ -251,7 +251,10 @@ namespace Acacia.Stubs.OutlookWrappers
public IExplorer GetActiveExplorer()
{
return new ExplorerWrapper(_app.ActiveExplorer());
NSOutlook.Explorer explorer = _app.ActiveExplorer();
if (explorer == null)
return null;
return new ExplorerWrapper(explorer);
}
public IInspectors GetInspectors()

View File

@ -74,6 +74,8 @@ namespace Acacia.ZPush
// TODO: cache folder id per store
using (IStore store = folder.GetStore())
{
if (store == null)
return false;
return folder.EntryID == store.GetDefaultFolderId(_folder);
}
}

View File

@ -137,6 +137,8 @@ namespace Acacia.ZPush
public ZPushAccount GetAccount(IStore store)
{
if (store == null)
return null;
ZPushAccount value = null;
_accountsByStoreId.TryGetValue(store.StoreID, out value);
return value;

View File

@ -52,15 +52,17 @@ namespace Acacia.ZPush
Accounts = new ZPushAccounts(this, addIn);
// Need to keep a link to keep receiving events
// Might be null when starting a compose window only
_explorer = _addIn.GetActiveExplorer();
_explorer.SelectionChange += Explorer_SelectionChange;
if (_explorer != null)
_explorer.SelectionChange += Explorer_SelectionChange;
}
protected override void DoRelease()
{
Accounts.Dispose();
Sync.Dispose();
_explorer.Dispose();
_explorer?.Dispose();
}
/// <summary>