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() } }