diff options
| author | Paul Buetow <paul@buetow.org> | 2026-03-06 15:50:50 +0200 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-03-06 15:50:50 +0200 |
| commit | 58825fb53b900aedd3b161ff0e3b769a2cf188ab (patch) | |
| tree | 2b805fabfba124cb794006f1b4b16ed05f5e7da0 /internal/eventloop.go | |
| parent | 99b02bf8c389a793df5d5986db05eed7e459f7b1 (diff) | |
fix: return errors for invalid event filters (task 382)
Diffstat (limited to 'internal/eventloop.go')
| -rw-r--r-- | internal/eventloop.go | 10 |
1 files changed, 7 insertions, 3 deletions
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() { |
