From 58825fb53b900aedd3b161ff0e3b769a2cf188ab Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Fri, 6 Mar 2026 15:50:50 +0200 Subject: fix: return errors for invalid event filters (task 382) --- internal/eventloop.go | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'internal/eventloop.go') diff --git a/internal/eventloop.go b/internal/eventloop.go index 6f14325..d95a441 100644 --- a/internal/eventloop.go +++ b/internal/eventloop.go @@ -181,12 +181,16 @@ type eventLoop struct { done chan struct{} } -func newEventLoop(cfg eventLoopConfig) *eventLoop { +func newEventLoop(cfg eventLoopConfig) (*eventLoop, error) { filesByFD := make(map[int32]file.File) commsByTID := make(map[uint32]string) + filter, err := newEventFilter(cfg.commFilter, cfg.pathFilter) + if err != nil { + return nil, fmt.Errorf("create event filter: %w", err) + } el := &eventLoop{ - filter: newEventFilter(cfg.commFilter, cfg.pathFilter), + filter: filter, enterEvs: make(map[uint32]*event.Pair), pendingHandles: make(map[uint32]string), files: filesByFD, @@ -203,7 +207,7 @@ func newEventLoop(cfg eventLoopConfig) *eventLoop { el.initRawHandlers() el.configureOutputCallback() el.seedTrackedPidComm() - return el + return el, nil } func (e *eventLoop) seedTrackedPidComm() { -- cgit v1.2.3