summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorEthan Chen <intervigil@gmail.com>2014-10-13 11:15:13 -0700
committerEthan Chen <intervigil@gmail.com>2014-10-15 17:46:57 +0000
commit7c57573438222f402944efaf40a0f5e9700cf328 (patch)
tree7c6c37cd8a665d80a1df9890aeedd71ea52aa6cb /src
parentda62675d1a40c2086ff82a68bb0d8507af326be2 (diff)
downloadandroid_packages_apps_Dialer-7c57573438222f402944efaf40a0f5e9700cf328.tar.gz
android_packages_apps_Dialer-7c57573438222f402944efaf40a0f5e9700cf328.tar.bz2
android_packages_apps_Dialer-7c57573438222f402944efaf40a0f5e9700cf328.zip
Fix uncaught exception when no location provider available
Change-Id: I2625e6d219401a04a372a487d84edaaf3099f0d6
Diffstat (limited to 'src')
-rw-r--r--src/com/android/dialer/lookup/LookupProvider.java37
1 files changed, 21 insertions, 16 deletions
diff --git a/src/com/android/dialer/lookup/LookupProvider.java b/src/com/android/dialer/lookup/LookupProvider.java
index fc966baa3..2c6ead0e2 100644
--- a/src/com/android/dialer/lookup/LookupProvider.java
+++ b/src/com/android/dialer/lookup/LookupProvider.java
@@ -253,26 +253,31 @@ public class LookupProvider extends ContentProvider {
LocationManager locationManager = (LocationManager)
getContext().getSystemService(Context.LOCATION_SERVICE);
- locationManager.requestSingleUpdate(new Criteria(),
- new LocationListener() {
- @Override
- public void onLocationChanged(Location location) {
- }
+ try {
+ locationManager.requestSingleUpdate(new Criteria(),
+ new LocationListener() {
+ @Override
+ public void onLocationChanged(Location location) {
+ }
- @Override
- public void onProviderDisabled(String provider) {
- }
+ @Override
+ public void onProviderDisabled(String provider) {
+ }
- @Override
- public void onProviderEnabled(String provider) {
- }
+ @Override
+ public void onProviderEnabled(String provider) {
+ }
- @Override
- public void onStatusChanged(String provider, int status, Bundle extras) {
- }
- }, Looper.getMainLooper());
+ @Override
+ public void onStatusChanged(String provider, int status, Bundle extras) {
+ }
+ }, Looper.getMainLooper());
- return locationManager.getLastLocation();
+ return locationManager.getLastLocation();
+ } catch (IllegalArgumentException e) {
+ // If no location service exists, IllegalArgument exception is thrown
+ return null;
+ }
}
/**