Add mroe null checks in LocationAuthCallback Should Fix #740 (#748)

This commit is contained in:
James Montemagno 2019-05-30 19:18:13 -07:00 коммит произвёл GitHub
Родитель 82136cab28
Коммит 5b4cf5474d
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
1 изменённых файлов: 6 добавлений и 4 удалений

Просмотреть файл

@ -95,12 +95,14 @@ namespace Xamarin.Essentials
void LocationAuthCallback(object sender, CLAuthorizationChangedEventArgs e) void LocationAuthCallback(object sender, CLAuthorizationChangedEventArgs e)
{ {
if (e.Status == CLAuthorizationStatus.NotDetermined) if (e?.Status == null || e.Status == CLAuthorizationStatus.NotDetermined)
return; return;
locationManager.AuthorizationChanged -= LocationAuthCallback; if (locationManager != null)
tcs.TrySetResult(GetLocationStatus()); locationManager.AuthorizationChanged -= LocationAuthCallback;
locationManager.Dispose();
tcs?.TrySetResult(GetLocationStatus());
locationManager?.Dispose();
locationManager = null; locationManager = null;
} }
} }