> From: l...@gnu.org (Ludovic Courtès)
> Cc: guile-devel@gnu.org
> Date: Wed, 11 Jun 2014 14:37:53 +0200
> 
> OK, thanks for the explanation.
> 
> Below is the fix I just pushed.
> [...]
> +(define %null-device
> +  ;; On Windows (MinGW), /dev/null does not exist and we must instead
> +  ;; use NUL.  Note that file system procedures automatically translate
> +  ;; /dev/null, so this variable is only useful for shell snippets.
> +  (if (file-exists? "/dev/null")
> +      "/dev/null"
> +      "NUL"))

Not sure this is a good idea: I can create a file /dev/null on
Windows, but that doesn't mean it is my null device.

>                        (with-input-from-port (car p2c)
>                          (lambda ()
>                            (open-input-pipe
> -                           "exec 1>/dev/null; echo closed 1>&2; exec 
> 2>/dev/null; read REPLY")))))))
> +                           (format #f "exec 1>~a; echo closed 1>&2; \
> +exec 2>~a; read REPLY"
> +                                   %null-device %null-device))))))))

Here, the pipe will not work on Windows anyway, because there's no
'exec' command.  But it's good to use %null-device nonetheless, for
consistency.


Reply via email to