From e5d8a4b8d0cee155fc38ce4bd8275a6d1f09fe0a Mon Sep 17 00:00:00 2001 From: Pierre Curto Date: Sun, 17 Oct 2021 18:34:22 +0200 Subject: [PATCH] io/router: reuse scratch space in pointerQueue.Frame This removes the allocation needed to drop all handlers except one. Signed-off-by: Pierre Curto --- io/router/pointer.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io/router/pointer.go b/io/router/pointer.go index b09b96ba..4e7978a8 100644 --- a/io/router/pointer.go +++ b/io/router/pointer.go @@ -275,7 +275,7 @@ func (q *pointerQueue) Frame(root *op.Ops, events *handlerEvents) { for i, k2 := range p.handlers { if k2 == k { // Drop other handlers that lost their grab. - dropped := make([]event.Tag, 0, len(p.handlers)-1) + dropped := q.scratch[:0] dropped = append(dropped, p.handlers[:i]...) dropped = append(dropped, p.handlers[i+1:]...) for _, tag := range dropped {