Remove egregious lack of support for reading directory contents in filesystem driver
This commit is contained in:
parent
73e0ba315a
commit
4ee234f118
|
@ -21,7 +21,7 @@
|
|||
(track-file name reader-proc))))
|
||||
|
||||
(define (read-file name reader-proc)
|
||||
(and (file-exists? name)
|
||||
(and (or (file-exists? name) (directory-exists? name))
|
||||
(reader-proc name)))
|
||||
|
||||
(define (track-file name reader-proc)
|
||||
|
@ -44,7 +44,7 @@
|
|||
;; (log-info "track-file-changes ~v: ~v" name msg)
|
||||
(match msg
|
||||
['quit (void)])))
|
||||
(if (file-exists? name) ;; TODO: TOCTTOU :-(
|
||||
(if (or (file-exists? name) (directory-exists? name)) ;; TODO: TOCTTOU :-(
|
||||
(handle-evt (filesystem-change-evt name)
|
||||
(lambda (_dummy)
|
||||
;; (log-info "track-file-changes ~v: changed" name)
|
||||
|
|
|
@ -18,4 +18,11 @@
|
|||
(actor #:name (list 'monitor name)
|
||||
(stop-when (message (list "close" name)))
|
||||
(on (asserted (file-content name file->bytes $bs))
|
||||
(log-info "~a: ~v" name bs)))))
|
||||
(log-info "~a: ~v" name bs))))
|
||||
|
||||
;; The driver can track directory "contents" just as well as files.
|
||||
(on (message (list "opendir" $name))
|
||||
(actor #:name (list 'monitor name)
|
||||
(stop-when (message (list "close" name)))
|
||||
(on (asserted (file-content name directory-list $files))
|
||||
(log-info "~a: ~v" name files)))))
|
||||
|
|
Loading…
Reference in New Issue