Skip to content

legado_app_beta_3.26.082023

Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 20 Aug 15:15
0084585

更新内容

  • [修复]:进入未缓存正文快速退出导致“正在下载”数量卡死及状态泄漏的问题
  • Bug现象
    一本书全本下载后,进入未缓存章节的正文页,如果还没缓存完就快速退出了正文页,就会一直显示正在下载:3,即使整本缓存结束,还是显示3。

  • 核心修复 (Coroutine.kt)
    修复了在协程被动取消(如 scope.cancelChildren())时,onCancel 清理回调因为上次commit新增的防御机制被错误丢弃的 Bug。
    原因:原代码依赖 job.invokeOnCompletion 触发 cancel() 方法,但由于此时 job.isCompleted 必定为 true,导致被 cancel() 内部的安全检查直接拦截。
    解决:在 invokeOnCompletion 监听到被动取消(CancellationException)时,绕开 cancel() 方法的生命周期拦截,直接派发执行清理闭包,确保僵尸任务得到妥善处理。