golang-set icon indicating copy to clipboard operation
golang-set copied to clipboard

Fix threadsafe.go threadSafeSet[T].UnmarshalJSON

Open wangzhione opened this issue 10 months ago • 1 comments

threadSafeSet[T].UnmarshalJSON Can modify threadUnsafeSet data, so need a write lock

wangzhione avatar Jan 16 '25 17:01 wangzhione

A more appropriate approach

func (t *threadSafeSet[T]) UnmarshalJSON(b []byte) error {
	var i []T
	err := json.Unmarshal(b, &i)
	if err != nil {
		return err
	}

	t.Append(i...)
	return nil
}

wangzhione avatar Jan 16 '25 17:01 wangzhione