forked from upstream-mirrors/OpenTracks
Bugfix: prevent rare crash due to Actvity lifecycle events in AbstractTrackDeleteActivity.
This commit is contained in:
@@ -96,11 +96,7 @@ public abstract class AbstractTrackDeleteActivity extends AbstractActivity imple
|
|||||||
protected abstract Track.Id getRecordingTrackId();
|
protected abstract Track.Id getRecordingTrackId();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void connected() {
|
public void connected(TrackDeleteService service) {
|
||||||
TrackDeleteService service = trackDeleteServiceConnection.getServiceIfBound();
|
|
||||||
if (service == null) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
service.getDeletingStatusObservable().observe(AbstractTrackDeleteActivity.this, this::onTrackDeleteStatus);
|
service.getDeletingStatusObservable().observe(AbstractTrackDeleteActivity.this, this::onTrackDeleteStatus);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -27,7 +27,7 @@ public class TrackDeleteServiceConnection implements ServiceConnection {
|
|||||||
@Override
|
@Override
|
||||||
public void onServiceConnected(ComponentName name, IBinder service) {
|
public void onServiceConnected(ComponentName name, IBinder service) {
|
||||||
trackDeleteService = ((TrackDeleteService.Binder) service).getService();
|
trackDeleteService = ((TrackDeleteService.Binder) service).getService();
|
||||||
listener.connected();
|
listener.connected(trackDeleteService);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -60,11 +60,7 @@ public class TrackDeleteServiceConnection implements ServiceConnection {
|
|||||||
trackDeleteService = null;
|
trackDeleteService = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
public TrackDeleteService getServiceIfBound() {
|
|
||||||
return trackDeleteService;
|
|
||||||
}
|
|
||||||
|
|
||||||
public interface Listener {
|
public interface Listener {
|
||||||
void connected();
|
void connected(@NonNull TrackDeleteService service);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user