aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Tardieu <sam@rfc1149.net>2014-08-26 11:46:13 +0200
committerSamuel Tardieu <sam@rfc1149.net>2014-08-26 11:46:13 +0200
commit41ae891a56181e4685591ba70a867300e04b7cd2 (patch)
tree3a699c72ee867271f1a06ebd1ceba0f38369a4cf
parent76ddb1439d0e3f060f98c6756b78816083e07215 (diff)
downloadcgeo-41ae891a56181e4685591ba70a867300e04b7cd2.zip
cgeo-41ae891a56181e4685591ba70a867300e04b7cd2.tar.gz
cgeo-41ae891a56181e4685591ba70a867300e04b7cd2.tar.bz2
fix #4215: runtime exception on emulator
-rw-r--r--main/src/cgeo/geocaching/CgeoApplication.java6
-rw-r--r--main/src/cgeo/geocaching/sensors/OrientationProvider.java2
2 files changed, 7 insertions, 1 deletions
diff --git a/main/src/cgeo/geocaching/CgeoApplication.java b/main/src/cgeo/geocaching/CgeoApplication.java
index cbe5cad..eada725 100644
--- a/main/src/cgeo/geocaching/CgeoApplication.java
+++ b/main/src/cgeo/geocaching/CgeoApplication.java
@@ -94,6 +94,12 @@ public class CgeoApplication extends Application {
public Observable<? extends Float> call(final Throwable throwable) {
return OrientationProvider.create(CgeoApplication.this);
}
+ }).onErrorResumeNext(new Func1<Throwable, Observable<? extends Float>>() {
+ @Override
+ public Observable<? extends Float> call(final Throwable throwable) {
+ Log.e("Device orientation will not be available as no suitable sensors were found");
+ return Observable.never();
+ }
}).replay(1).refCount().doOnNext(new Action1<Float>() {
@Override
public void call(final Float direction) {
diff --git a/main/src/cgeo/geocaching/sensors/OrientationProvider.java b/main/src/cgeo/geocaching/sensors/OrientationProvider.java
index eb71e17..83e0638 100644
--- a/main/src/cgeo/geocaching/sensors/OrientationProvider.java
+++ b/main/src/cgeo/geocaching/sensors/OrientationProvider.java
@@ -48,7 +48,7 @@ public class OrientationProvider extends LooperCallbacks<Float> implements Senso
Log.d("OrientationProvider: starting the orientation provider");
sensorManager.registerListener(this, orientationSensor, SensorManager.SENSOR_DELAY_NORMAL);
} else {
- // subscriber.onError(new RuntimeException("orientation sensor is absent on this device"));
+ subscriber.onError(new RuntimeException("orientation sensor is absent on this device"));
}
}