Snap for 7594603 from e2ca493505cd4e54feebcd5ff9a1ab3a42954963 to sc-mainline-release
Change-Id: Ic65ecd0c65f3fd336e4e973e26c7cf5821d69bec
diff --git a/src/com/android/providers/calendar/CalendarProviderJobService.java b/src/com/android/providers/calendar/CalendarProviderJobService.java
index bfec48a..908304d 100644
--- a/src/com/android/providers/calendar/CalendarProviderJobService.java
+++ b/src/com/android/providers/calendar/CalendarProviderJobService.java
@@ -29,6 +29,8 @@
private static final String TAG = CalendarProvider2.TAG;
static final int JOB_ID = CalendarProviderJobService.class.hashCode();
+ private volatile boolean canRun;
+
@Override
public boolean onStartJob(JobParameters params) {
if (!params.isExpeditedJob()) {
@@ -44,6 +46,7 @@
return false;
}
+ canRun = true;
final CalendarProvider2 provider = (CalendarProvider2) cprovider;
new Thread(() -> {
@@ -58,6 +61,9 @@
if (Log.isLoggable(TAG, Log.DEBUG)) {
Log.d(TAG, "Next alarm set.");
}
+ if (!canRun) {
+ break;
+ }
params.completeWork(jwi);
}
}).start();
@@ -70,6 +76,7 @@
Slog.wtf(TAG, "CalendarProviderJobService was stopped due to "
+ JobParameters.getInternalReasonCodeDescription(params.getInternalStopReasonCode())
+ "(" + params.getStopReason() + ")");
+ canRun = false;
return true;
}
}