diff options
Diffstat (limited to 'main/src')
| -rw-r--r-- | main/src/cgeo/geocaching/CgeoApplication.java | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/main/src/cgeo/geocaching/CgeoApplication.java b/main/src/cgeo/geocaching/CgeoApplication.java index d34b70b..bb74b52 100644 --- a/main/src/cgeo/geocaching/CgeoApplication.java +++ b/main/src/cgeo/geocaching/CgeoApplication.java @@ -70,18 +70,14 @@ public class CgeoApplication extends Application { }.start(); } - public Observable<ImmutablePair<IGeoData, Float>> geoDirObservable() { + public synchronized Observable<ImmutablePair<IGeoData, Float>> geoDirObservable() { if (geoDir == null) { - synchronized(this) { - if (geoDir == null) { - geoDir = Observable.combineLatest(GeoDataProvider.create(this), DirectionProvider.create(this), new Func2<IGeoData, Float, ImmutablePair<IGeoData, Float>>() { - @Override - public ImmutablePair<IGeoData, Float> call(final IGeoData geoData, final Float dir) { - return new ImmutablePair<IGeoData, Float>(geoData, dir); - } - }); + geoDir = Observable.combineLatest(GeoDataProvider.create(this), DirectionProvider.create(this), new Func2<IGeoData, Float, ImmutablePair<IGeoData, Float>>() { + @Override + public ImmutablePair<IGeoData, Float> call(final IGeoData geoData, final Float dir) { + return new ImmutablePair<IGeoData, Float>(geoData, dir); } - } + }); } return geoDir; } |
