Fix fetchMeta may not use latest token

This commit is contained in:
2024-05-25 20:02:59 +08:00
parent b55c08b99b
commit acc53e51bf

View File

@@ -54,8 +54,15 @@ class TaskManager {
void addToTasksList(Task task, TaskStatus status) {
if (task.type == TaskType.download && !meta.containsKey(task.gid)) {
peddingGids.add(task.gid);
peddingTokens.add(task.token);
if (peddingGids.contains(task.gid)) {
final index = peddingGids.indexOf(task.gid);
if (peddingTokens[index]! != task.token) {
peddingTokens[index] = task.token;
}
} else {
peddingGids.add(task.gid);
peddingTokens.add(task.token);
}
}
if (status == TaskStatus.finished) {
tasksList.add(task.id);