From 1864a20dd2f01e7bc2a79eb5467ccd49031deb20 Mon Sep 17 00:00:00 2001 From: renhaoting <370797079@qq.com> Date: Mon, 19 Jan 2026 14:47:24 +0800 Subject: [PATCH] =?UTF-8?q?concurrent=20=E5=BC=82=E5=B8=B8=E5=A4=84?= =?UTF-8?q?=E7=90=86+1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/gamedog/vididin/manager/RecordsManager.kt | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/app/src/main/java/com/gamedog/vididin/manager/RecordsManager.kt b/app/src/main/java/com/gamedog/vididin/manager/RecordsManager.kt index 7f4a7ec..a6672c2 100644 --- a/app/src/main/java/com/gamedog/vididin/manager/RecordsManager.kt +++ b/app/src/main/java/com/gamedog/vididin/manager/RecordsManager.kt @@ -282,15 +282,22 @@ abstract class BaseRecordHelper { mbgScope.launch { try { mRecordLocker.lock() + var replaceIndex = -1 + var replaceItem : BaseRecord? = null mRecordList.forEachIndexed { index, data -> if (data.uuid == updateBean.uuid) { - mRecordList.remove(data) - mRecordList.add(index, updateBean) + replaceIndex = index + replaceItem = data return@forEachIndexed } } - saveRecordList2Sp() + if (replaceIndex >= 0) { + mRecordList.remove(replaceItem) + mRecordList.add(replaceIndex, updateBean) + saveRecordList2Sp() + } + } finally { mRecordLocker.unlock() }