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

Commit 5bd8096b authored by Steve Kondik's avatar Steve Kondik
Browse files

Revert "Synchronize access of mSubscriptions and fix NPE"

This reverts commit 6be6a075.
parent e2a5d343
Loading
Loading
Loading
Loading
+30 −40
Original line number Diff line number Diff line
@@ -83,7 +83,6 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
        pw.print("      mRegistered="); pw.println(mRegistered);
        pw.println("      mSubscriptions=");
        final long now = System.currentTimeMillis();
        synchronized (mSubscriptions) {
        for (Uri conditionId : mSubscriptions.keySet()) {
            pw.print("        ");
            pw.print(meetsSchedule(mSubscriptions.get(conditionId), now) ? "* " : "  ");
@@ -91,7 +90,6 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
            pw.print("            ");
            pw.println(mSubscriptions.get(conditionId).toString());
        }
        }
        dumpUpcomingTime(pw, "mNextAlarmTime", mNextAlarmTime, now);
    }

@@ -120,18 +118,14 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
            notifyCondition(conditionId, Condition.STATE_FALSE, "badCondition");
            return;
        }
        synchronized (mSubscriptions) {
        mSubscriptions.put(conditionId, toScheduleCalendar(conditionId));
        }
        evaluateSubscriptions();
    }

    @Override
    public void onUnsubscribe(Uri conditionId) {
        if (DEBUG) Slog.d(TAG, "onUnsubscribe " + conditionId);
        synchronized (mSubscriptions) {
        mSubscriptions.remove(conditionId);
        }
        evaluateSubscriptions();
    }

@@ -149,9 +143,8 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
        if (mAlarmManager == null) {
            mAlarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
        }
        final long now = System.currentTimeMillis();
        synchronized (mSubscriptions) {
        setRegistered(!mSubscriptions.isEmpty());
        final long now = System.currentTimeMillis();
        mNextAlarmTime = 0;
        long nextUserAlarmTime = getNextAlarm();
        for (Uri conditionId : mSubscriptions.keySet()) {
@@ -161,7 +154,7 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
                cal.maybeSetNextAlarm(now, nextUserAlarmTime);
            } else {
                notifyCondition(conditionId, Condition.STATE_FALSE, "!meetsSchedule");
                    if ((cal != null) && (nextUserAlarmTime == 0)) {
                if (nextUserAlarmTime == 0) {
                    cal.maybeSetNextAlarm(now, nextUserAlarmTime);
                }
            }
@@ -174,7 +167,6 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
                }
            }
        }
        }
        updateAlarm(now, mNextAlarmTime);
    }

@@ -249,7 +241,6 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
        @Override
        public void onReceive(Context context, Intent intent) {
            if (DEBUG) Slog.d(TAG, "onReceive " + intent.getAction());
            synchronized (mSubscriptions) {
            if (Intent.ACTION_TIMEZONE_CHANGED.equals(intent.getAction())) {
                for (Uri conditionId : mSubscriptions.keySet()) {
                    final ScheduleCalendar cal = mSubscriptions.get(conditionId);
@@ -258,7 +249,6 @@ public class ScheduleConditionProvider extends SystemConditionProviderService {
                    }
                }
            }
            }
            evaluateSubscriptions();
        }
    };