diff --git a/network/message/critical.go b/network/message/critical.go index 99c83d9842b48f200d6e3c2d2e930b8441ae362e..0ba2fa1e2360a8e904c23b27a1605cc0b0224a27 100644 --- a/network/message/critical.go +++ b/network/message/critical.go @@ -15,6 +15,7 @@ import ( ds "gitlab.com/elixxir/comms/network/dataStructures" "gitlab.com/elixxir/primitives/format" "gitlab.com/elixxir/primitives/states" + "gitlab.com/xx_network/primitives/id" "time" ) @@ -83,7 +84,8 @@ func (m *Manager) criticalMessages() { param := params.GetDefaultCMIX() //raw critical messages for msg, rid, has := critRawMsgs.Next(); has; msg, rid, has = critRawMsgs.Next() { - go func(msg format.Message) { + localRid := rid.DeepCopy() + go func(msg format.Message, rid *id.ID) { //send the message round, _, err := m.SendCMIX(msg, rid, param) //if the message fail to send, notify the buffer so it can be handled @@ -112,7 +114,7 @@ func (m *Manager) criticalMessages() { return } critRawMsgs.Succeeded(msg, rid) - }(msg) + }(msg, localRid) } -} +} \ No newline at end of file