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

Commit 78cc50fa authored by Soonil Nagarkar's avatar Soonil Nagarkar
Browse files

Hide error logs for passive provider

The passive provider sees locations from multiple other providers
interleaved, so seeing non-monotonic locations is more expected than it
would be for any normal provider. Hide the error message in this case.

Test: n/a
Change-Id: Ifd96ddca6fc7e7162c5cf64e1653e228e1ba54a6
parent 5d5f191c
Loading
Loading
Loading
Loading
+10 −4
Original line number Original line Diff line number Diff line
@@ -2523,11 +2523,17 @@ public class LocationProviderManager extends
            filtered = locationResult;
            filtered = locationResult;
        }
        }


        Location last = getLastLocationUnsafe(USER_CURRENT, PERMISSION_FINE, true, Long.MAX_VALUE);
        // check for non-monotonic locations if we're not the passive manager. the passive manager
        // is much more likely to see non-monotonic locations since it gets locations from all
        // providers, so this error log is not very useful there.
        if (mPassiveManager != null) {
            Location last = getLastLocationUnsafe(USER_CURRENT, PERMISSION_FINE, true,
                    Long.MAX_VALUE);
            if (last != null && locationResult.get(0).getElapsedRealtimeNanos()
            if (last != null && locationResult.get(0).getElapsedRealtimeNanos()
                    < last.getElapsedRealtimeNanos()) {
                    < last.getElapsedRealtimeNanos()) {
                Log.e(TAG, "non-monotonic location received from " + mName + " provider");
                Log.e(TAG, "non-monotonic location received from " + mName + " provider");
            }
            }
        }


        // update last location
        // update last location
        setLastLocation(filtered.getLastLocation(), UserHandle.USER_ALL);
        setLastLocation(filtered.getLastLocation(), UserHandle.USER_ALL);