Ludovic Courtès schreef op zo 27-02-2022 om 14:53 [+0100]: >           (define (symlink-to-store? path) > -           (and (equal? (stat:type (lstat path)) 'symlink) > -                (store-file-name? (readlink path)))) > +           (catch 'system-error > +             (lambda () > +               (store-file-name? (readlink path))) > +             (lambda args > +               (if (= EINVAL (system-error-errno args)) > +                   #f > +                   (apply throw args))))) I think it would be slightly clearer if 'store-file-name?' was moved outside the catch: (and=> (catch 'system-error (lambda () (readlink path)) [...]) store-file-name?) It is 'readlink' that might throw an exception, not 'store-file-name?'. Greetings, Maxime.