From 9bffc11b598da2ecd092715f308729750158cea1 Mon Sep 17 00:00:00 2001 From: XingY Date: Thu, 9 Oct 2025 10:03:57 -0700 Subject: [PATCH] Issue 53864 & 53367: sample status edit fails; parent detail status shows wrong color --- .../src/org/labkey/core/query/DataStatesTableInfo.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/core/src/org/labkey/core/query/DataStatesTableInfo.java b/core/src/org/labkey/core/query/DataStatesTableInfo.java index ebdf00d67af..20ffdeef6b5 100644 --- a/core/src/org/labkey/core/query/DataStatesTableInfo.java +++ b/core/src/org/labkey/core/query/DataStatesTableInfo.java @@ -91,7 +91,7 @@ private DataState getDataState(Map row, Container container) return _dataState; } - private boolean isDuplicate(String label, Container container) + private boolean isDuplicate(String label, Container container, int currentRowId) { Map> registeredHandlers = DataStateManager.getInstance().getRegisteredDataHandlers(); for (DataStateHandler handler : registeredHandlers.values()) @@ -101,7 +101,8 @@ private boolean isDuplicate(String label, Container container) List dataStates = handler.getStates(container); for (DataState dataState : dataStates) { - if (dataState.getLabel().equalsIgnoreCase(label)) + boolean isUpdatingCurrent = currentRowId == dataState.getRowId(); + if (!isUpdatingCurrent && dataState.getLabel().equalsIgnoreCase(label)) return true; } } @@ -151,7 +152,8 @@ protected Map updateRow(User user, Container container, Map insertRow(User user, Container container, Map rowToInsert;