Skip to content

Commit c4941b9

Browse files
Merge pull request #10 from Apteryks/monitor-timeout-bugfix-v2
Monitor timeout bugfix v2
2 parents e5605bc + ea2abcb commit c4941b9

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

modules/udev/monitor.scm

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@
2727
;;; Code:
2828

2929
(define-module (udev monitor)
30-
#:use-module (srfi srfi-1)
3130
#:export (udev-monitor
3231
udev-monitor?
3332
%make-udev-monitor
@@ -64,9 +63,11 @@ seconds and microseconds, respectively. If TIMEOUT-USEC, is used, TIMEOUT-SEC
6463
must also have a value, else it is ignored, as for the 'secs' and 'usecs'
6564
argument of Guile's 'select' procedure."
6665
(let ((monitor (%make-udev-monitor udev)))
67-
(apply udev-monitor-set-timeout!
68-
(cons monitor
69-
(filter-map identity (list timeout-sec timeout-usec))))
66+
;; Guile's select accepts #f for its optional 'secs' argument,
67+
;; but not for usecs'.
68+
(if timeout-usec
69+
(udev-monitor-set-timeout! monitor timeout-sec timeout-usec)
70+
(udev-monitor-set-timeout! monitor timeout-sec))
7071
(udev-monitor-set-callback! monitor callback)
7172
(udev-monitor-set-error-callback! monitor error-callback)
7273
(when filter

0 commit comments

Comments
 (0)