1
0
mirror of https://github.com/pocketbase/pocketbase.git synced 2025-11-28 00:38:36 +02:00

[#109] prealocated handlers and replaced OnRecordBeforeDeleteRequest with OnModelBeforeDelete

This commit is contained in:
Gani Georgiev
2022-07-14 22:35:57 +03:00
parent d8c8289269
commit c4fcba5210
2 changed files with 18 additions and 14 deletions

View File

@@ -44,7 +44,9 @@ func (h *Hook[T]) Reset() {
// - any non-nil error is returned in one of the handlers
func (h *Hook[T]) Trigger(data T, oneOffHandlers ...Handler[T]) error {
h.mux.Lock()
handlers := append(h.handlers, oneOffHandlers...) //nolint:gocritic
handlers := make([]Handler[T], 0, len(h.handlers)+len(oneOffHandlers))
handlers = append(handlers, h.handlers...)
handlers = append(handlers, oneOffHandlers...)
// unlock is not deferred to avoid deadlocks when Trigger is called recursive by the handlers
h.mux.Unlock()