From b52a42575473d8931f1d54093ed6736d20e96b8d Mon Sep 17 00:00:00 2001 From: Dustin Pianalto Date: Thu, 6 Mar 2025 14:22:00 -0900 Subject: [PATCH] try locking reader while processing results. --- derby/derby.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/derby/derby.go b/derby/derby.go index 2d6a7a8..8970c9f 100644 --- a/derby/derby.go +++ b/derby/derby.go @@ -219,6 +219,7 @@ func (dc *DerbyClock) readLoop() { if b[0] == ' ' { // These characters could indicate a complete result or a separator // Try to extract a result from the buffer + dc.mu.Lock() result := dc.tryExtractResult(buffer) if result != nil { // Send lane finish event @@ -229,6 +230,7 @@ func (dc *DerbyClock) readLoop() { } // Clear the buffer after a result is extracted buffer = buffer[:0] + dc.mu.Unlock() } }