Commit 4fceea9
wm: Passing a new ArraySet instance to avoid crash
The two threads "LazyTaskWriterThread" and "TaskSnapshotPersister"
are using the same persistentTaskIds param, which can lead to crash as follows
E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: TaskSnapshotPersister
E AndroidRuntime: java.lang.ArrayIndexOutOfBoundsException: length=0; index=14
E AndroidRuntime: at android.util.ContainerHelpers.binarySearch(ContainerHelpers.java:28)
E AndroidRuntime: at android.util.ArraySet.indexOf(ArraySet.java:86)
E AndroidRuntime: at android.util.ArraySet.indexOf(ArraySet.java:341)
E AndroidRuntime: at android.util.ArraySet.contains(ArraySet.java:330)
E AndroidRuntime: at com.android.server.wm.TaskSnapshotPersister$RemoveObsoleteFilesQueueItem.write(TaskSnapshotPersister.java:388)
E AndroidRuntime: at com.android.server.wm.TaskSnapshotPersister$1.run(TaskSnapshotPersister.java:226)
To fix this, passing a new ArraySet instance instead.
Change-Id: Id9503ae93ea929e7a289bd0a9f461f0639983ea61 parent d8b31f8 commit 4fceea9
1 file changed
Lines changed: 3 additions & 1 deletion
Lines changed: 3 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
165 | | - | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
166 | 168 | | |
167 | 169 | | |
168 | 170 | | |
| |||
0 commit comments