@@ -226,14 +226,15 @@ func (a anim) ID() string {
226226}
227227
228228func (a *anim) updateChars(chars *[]cyclingChar) {
229− for i, c := range *chars {
229+ charSlice := *chars // dereference to avoid repeated pointer access
230+ for i, c := range charSlice {
230231 switch c.state(a.start) {
231232 case charInitialState:
232− (*chars)[i].currentValue = '.'
233+ charSlice[i].currentValue = '.'
233234 case charCyclingState:
234− (*chars)[i].currentValue = c.randomRune()
235+ charSlice[i].currentValue = c.randomRune()
235236 case charEndOfLifeState:
236− (*chars)[i].currentValue = c.finalValue
237+ charSlice[i].currentValue = c.finalValue
237238 }
238239 }
239240}