Fix job persistence & re-inflation
We were persisting jobs' battery-not-low constraints but were not properly restoring that constraint when the job was inflated at boot. This could result in a runtime bootloop (!) if the job had no other constraints, requiring a factory reset to restore the device to usability. We now: * properly inflate the battery-not-low constraint; * persist & inflate the storage-not-low constraint, which previously was being stripped entirely and could result in a similar crash-at-boot; * ignore the job rather than crash the system if one is inflated into a non-viable state; and * formally test previously-untested constraint persistence Bug: 130012063 Test: atest $ANDROID_BUILD_TOP/frameworks/base/services/tests/servicestests/src/com/android/server/job/JobStoreTest.java Test: atest CtsJobSchedulerTestCases Test: JobStoreTest with forced throw in JobInfo.Builder#build() Change-Id: Ia3ab1eb16aeaa85336409368b4340622cec19f4c
Loading
Please register or sign in to comment