Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit aa64548d authored by Zhentao Sun's avatar Zhentao Sun Committed by Android (Google) Code Review
Browse files

Merge "Fixed unreleased wake lock isues and NPE." into jb-mr2-dev

parents 0c99050e cfa496f7
Loading
Loading
Loading
Loading
+40 −34
Original line number Diff line number Diff line
@@ -470,11 +470,12 @@ public final class GeofenceHardwareImpl {
                    synchronized (mGeofences) {
                        callback = mGeofences.get(geofenceId);
                    }
                    if (callback == null) return;

                    if (callback != null) {
                        try {
                            callback.onGeofenceAdd(geofenceId, msg.arg2);
                        } catch (RemoteException e) {Log.i(TAG, "Remote Exception:" + e);}
                    }
                    releaseWakeLock();
                    break;
                case REMOVE_GEOFENCE_CALLBACK:
@@ -482,14 +483,15 @@ public final class GeofenceHardwareImpl {
                    synchronized (mGeofences) {
                        callback = mGeofences.get(geofenceId);
                    }
                    if (callback == null) return;

                    if (callback != null) {
                        try {
                            callback.onGeofenceRemove(geofenceId, msg.arg2);
                        } catch (RemoteException e) {}
                        synchronized (mGeofences) {
                            mGeofences.remove(geofenceId);
                        }
                    }
                    releaseWakeLock();
                    break;

@@ -498,11 +500,12 @@ public final class GeofenceHardwareImpl {
                    synchronized (mGeofences) {
                        callback = mGeofences.get(geofenceId);
                    }
                    if (callback == null) return;

                    if (callback != null) {
                        try {
                            callback.onGeofencePause(geofenceId, msg.arg2);
                        } catch (RemoteException e) {}
                    }
                    releaseWakeLock();
                    break;

@@ -511,11 +514,12 @@ public final class GeofenceHardwareImpl {
                    synchronized (mGeofences) {
                        callback = mGeofences.get(geofenceId);
                    }
                    if (callback == null) return;

                    if (callback != null) {
                        try {
                            callback.onGeofenceResume(geofenceId, msg.arg2);
                        } catch (RemoteException e) {}
                    }
                    releaseWakeLock();
                    break;

@@ -530,12 +534,14 @@ public final class GeofenceHardwareImpl {
                            " Transition: " + geofenceTransition.mTransition +
                            " Location: " + geofenceTransition.mLocation + ":" + mGeofences);

                    if (callback != null) {
                        try {
                            callback.onGeofenceTransition(
                                    geofenceTransition.mGeofenceId, geofenceTransition.mTransition,
                                    geofenceTransition.mLocation, geofenceTransition.mTimestamp,
                                    GeofenceHardware.MONITORING_TYPE_GPS_HARDWARE);
                        } catch (RemoteException e) {}
                    }
                    releaseWakeLock();
                    break;
                case GEOFENCE_CALLBACK_BINDER_DIED:
@@ -572,8 +578,7 @@ public final class GeofenceHardwareImpl {
                    available = (val == GeofenceHardware.MONITOR_CURRENTLY_AVAILABLE ?
                            true : false);
                    callbackList = mCallbacks[GeofenceHardware.MONITORING_TYPE_GPS_HARDWARE];
                    if (callbackList == null) return;

                    if (callbackList != null) {
                        if (DEBUG) Log.d(TAG, "MonitoringSystemChangeCallback: GPS : " + available);

                        for (IGeofenceHardwareMonitorCallback c: callbackList) {
@@ -583,6 +588,7 @@ public final class GeofenceHardwareImpl {
                                        location);
                            } catch (RemoteException e) {}
                        }
                    }
                    releaseWakeLock();
                    break;
                case CALLBACK_ADD: