From f8c55209527090a878b7a250cf85b195d8007b42 Mon Sep 17 00:00:00 2001 From: Marcel van Lohuizen Date: Sat, 5 Oct 2024 07:59:12 +0200 Subject: [PATCH] internal/core/adt: derive status from shared value In some cases a shared value may not be fully evaluated before a referencing node completes. In these cases, the status of a node may not reflect the actual status. This can be mitigated by dereferencing the value and taking its status instead. Signed-off-by: Marcel van Lohuizen Change-Id: I6f2f5eb3dba035311e103c0500c010734e12891d Reviewed-on: https://review.gerrithub.io/c/cue-lang/cue/+/1202214 Reviewed-by: Matthew Sackman Unity-Result: CUE porcuepine TryBot-Result: CUEcueckoo --- internal/core/adt/composite.go | 1 + 1 file changed, 1 insertion(+) diff --git a/internal/core/adt/composite.go b/internal/core/adt/composite.go index 159cae9069b..039a2c48dad 100644 --- a/internal/core/adt/composite.go +++ b/internal/core/adt/composite.go @@ -536,6 +536,7 @@ const ( ) func (v *Vertex) Status() vertexStatus { + v = v.DerefValue() return v.status }