Re: [PATCH 1/1] Use correct /dev/null for UNIX and Windows
> Subject: Re: [PATCH 1/1] Use correct /dev/null for UNIX and Windows
As this is only about contrib/diff-highlight, please make it clear that it is the area the patch affects on its title, i.e.
Subject: diff-highlight: use File::Spec->devnull(), not /dev/null
or something like that.
> From: chris <chris@webstech.net>
Please make this line read like
From: Chris Webster <chris@webstech.net>
i.e. the author should be the person who is signing off that patch.
Show 9 quoted lines
> Use File::Spec->devnull() for output redirection to avoid messages
> when Windows version of Perl is first in path. The message 'The
> system cannot find the path specified.' is displayed each time git is
> run to get colors.
>
> Signed-off-by: Chris. Webster <chris@webstech.net>
> ---
> contrib/diff-highlight/DiffHighlight.pm | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
There are a handful more instances of /dev/null found if you do
$ git grep /dev/null -- \*.pl \*.pm
The one in perl/Git.pm must be shared by scripts written in Perl, so it may be worth giving the same tweak to it, like this patch does to the highlight script.
Show 24 quoted lines
> diff --git a/contrib/diff-highlight/DiffHighlight.pm b/contrib/diff-highlight/DiffHighlight.pm
> index 536754583..7440aa1c4 100644
> --- a/contrib/diff-highlight/DiffHighlight.pm
> +++ b/contrib/diff-highlight/DiffHighlight.pm
> @@ -4,6 +4,11 @@ use 5.008;
> use warnings FATAL => 'all';
> use strict;
>
> +# Use the correct value for both UNIX and Windows (/dev/null vs nul)
> +use File::Spec;
> +
> +my $NULL = File::Spec->devnull();
> +
> # Highlight by reversing foreground and background. You could do
> # other things like bold or underline if you prefer.
> my @OLD_HIGHLIGHT = (
> @@ -134,7 +139,7 @@ sub highlight_stdin {
> # fallback, which means we will work even if git can't be run.
> sub color_config {
> my ($key, $default) = @_;
> - my $s = `git config --get-color $key 2>/dev/null`;
> + my $s = `git config --get-color $key 2>$NULL`;
> return length($s) ? $s : $default;
> }