aboutsummaryrefslogtreecommitdiffstats
path: root/main/src/cgeo
diff options
context:
space:
mode:
authorBananeweizen <bananeweizen@gmx.de>2013-12-08 18:47:30 +0100
committerBananeweizen <bananeweizen@gmx.de>2013-12-08 18:47:30 +0100
commitc3fcacdb36b8ef6a8535dfbbc9e94fce0ac52d8b (patch)
treedc34c13832d856c3115feb2beb42d1d1664ca792 /main/src/cgeo
parentf75b5d9b4294d62b1029bbaeffdc7fbf32c79011 (diff)
downloadcgeo-c3fcacdb36b8ef6a8535dfbbc9e94fce0ac52d8b.zip
cgeo-c3fcacdb36b8ef6a8535dfbbc9e94fce0ac52d8b.tar.gz
cgeo-c3fcacdb36b8ef6a8535dfbbc9e94fce0ac52d8b.tar.bz2
refactoring: findbugs issues
Diffstat (limited to 'main/src/cgeo')
-rw-r--r--main/src/cgeo/geocaching/connector/gc/GCParser.java5
-rw-r--r--main/src/cgeo/geocaching/loaders/AbstractSearchLoader.java9
-rw-r--r--main/src/cgeo/geocaching/maps/CGeoMap.java19
-rw-r--r--main/src/cgeo/geocaching/ui/CompassView.java6
4 files changed, 17 insertions, 22 deletions
diff --git a/main/src/cgeo/geocaching/connector/gc/GCParser.java b/main/src/cgeo/geocaching/connector/gc/GCParser.java
index 4f5d293..5b51226 100644
--- a/main/src/cgeo/geocaching/connector/gc/GCParser.java
+++ b/main/src/cgeo/geocaching/connector/gc/GCParser.java
@@ -276,10 +276,7 @@ public abstract class GCParser {
String recaptchaText = null;
if (thread != null && StringUtils.isNotBlank(thread.getChallenge())) {
- if (thread.getText() == null) {
- thread.waitForUser();
- }
-
+ thread.waitForUser();
recaptchaText = thread.getText();
}
diff --git a/main/src/cgeo/geocaching/loaders/AbstractSearchLoader.java b/main/src/cgeo/geocaching/loaders/AbstractSearchLoader.java
index 1cc9706..0ba8932 100644
--- a/main/src/cgeo/geocaching/loaders/AbstractSearchLoader.java
+++ b/main/src/cgeo/geocaching/loaders/AbstractSearchLoader.java
@@ -68,11 +68,6 @@ public abstract class AbstractSearchLoader extends AsyncTaskLoader<SearchResult>
}
@Override
- public boolean takeContentChanged() {
- return super.takeContentChanged();
- }
-
- @Override
protected void onStartLoading() {
forceLoad();
}
@@ -91,7 +86,9 @@ public abstract class AbstractSearchLoader extends AsyncTaskLoader<SearchResult>
@Override
public synchronized void waitForUser() {
try {
- wait();
+ while (getText() == null) {
+ wait();
+ }
} catch (InterruptedException e) {
Log.w("searchThread is not waiting for user…");
}
diff --git a/main/src/cgeo/geocaching/maps/CGeoMap.java b/main/src/cgeo/geocaching/maps/CGeoMap.java
index 28e1b71..41f622f 100644
--- a/main/src/cgeo/geocaching/maps/CGeoMap.java
+++ b/main/src/cgeo/geocaching/maps/CGeoMap.java
@@ -517,13 +517,8 @@ public class CGeoMap extends AbstractMap implements OnMapDragListener, ViewFacto
@Override
public void onPause() {
- if (loadTimer != null) {
- loadTimer.stopIt();
- loadTimer = null;
- }
-
+ stopTimer();
deleteGeoDirObservers();
-
savePrefs();
if (mapView != null) {
@@ -994,15 +989,19 @@ public class CGeoMap extends AbstractMap implements OnMapDragListener, ViewFacto
(new DisplayPointThread()).start();
} else {
// start timer
- if (loadTimer != null) {
- loadTimer.stopIt();
- loadTimer = null;
- }
+ stopTimer();
loadTimer = new LoadTimer();
loadTimer.start();
}
}
+ private synchronized void stopTimer() {
+ if (loadTimer != null) {
+ loadTimer.stopIt();
+ loadTimer = null;
+ }
+ }
+
/**
* loading timer Triggers every 250ms and checks for viewport change and starts a {@link LoadRunnable}.
*/
diff --git a/main/src/cgeo/geocaching/ui/CompassView.java b/main/src/cgeo/geocaching/ui/CompassView.java
index 3b4ed36..5e80f32 100644
--- a/main/src/cgeo/geocaching/ui/CompassView.java
+++ b/main/src/cgeo/geocaching/ui/CompassView.java
@@ -80,7 +80,9 @@ public class CompassView extends View implements PeriodicHandlerListener {
setfil = new PaintFlagsDrawFilter(0, Paint.FILTER_BITMAP_FLAG);
remfil = new PaintFlagsDrawFilter(Paint.FILTER_BITMAP_FLAG, 0);
- initialDisplay = true;
+ synchronized (this) {
+ initialDisplay = true;
+ }
redrawHandler.start();
}
@@ -148,7 +150,7 @@ public class CompassView extends View implements PeriodicHandlerListener {
}
@Override
- public void onPeriodic() {
+ public synchronized void onPeriodic() {
final float newAzimuthShown = smoothUpdate(northMeasured, azimuthShown);
final float newCacheHeadingShown = smoothUpdate(cacheHeadingMeasured, cacheHeadingShown);
if (Math.abs(AngleUtils.difference(azimuthShown, newAzimuthShown)) >= 2 ||