Skip to content

Commit 6a6eb08

Browse files
committed
fix random ordered create handlers
1 parent fdd9c7c commit 6a6eb08

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

pkg/demoinfocs/sendtables/sendtablescs2/entity.go

+7-2
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,11 @@ package sendtablescs2
33
import (
44
"fmt"
55
"os"
6+
"slices"
67
"strings"
78

89
"github.com/golang/geo/r3"
10+
"golang.org/x/exp/maps"
911

1012
bit "github.com/markus-wa/demoinfocs-golang/v5/internal/bitread"
1113
"github.com/markus-wa/demoinfocs-golang/v5/pkg/demoinfocs/constants"
@@ -587,10 +589,13 @@ func (p *Parser) OnPacketEntities(m *msg.CSVCMsg_PacketEntities) error {
587589
}
588590

589591
if t.op&st.EntityOpCreated != 0 {
590-
for prop, hs := range e.updateHandlers {
592+
props := maps.Keys(e.updateHandlers)
593+
slices.Sort(props) // TODO: should either be ordered by prop-order or handler registration order
594+
595+
for _, prop := range props {
591596
v := e.PropertyValueMust(prop)
592597

593-
for _, h := range hs {
598+
for _, h := range e.updateHandlers[prop] {
594599
h(v)
595600
}
596601
}

test/default.golden

0 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)