[PATCH] difftool: silence warning

Subsystems: the rest

DORMANTno replies

3 messages, 2 authors, 2016-06-15 · open the first message on its own page

[PATCH] difftool: silence warning

From: Ross Lagerwall <hidden>
Date: 2016-06-15 22:54:32

Silence a warning given when running git difftool --dir-diff and
there are no changes.
This is because command_oneline returns undef when the command has no
output, not ''.

Signed-off-by: Ross Lagerwall <redacted>
---
 git-difftool.perl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/git-difftool.perl b/git-difftool.perl
index ae1e052..1cfcbb3 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -117,7 +117,7 @@ sub setup_dir_diff
 	# by Git->repository->command*.
 	my $diffrepo = Git->repository(Repository => $repo_path, WorkingCopy => $workdir);
 	my $diffrtn = $diffrepo->command_oneline('diff', '--raw', '--no-abbrev', '-z', @ARGV);
-	exit(0) if (length($diffrtn) == 0);
+	exit(0) unless defined($diffrtn);
 
 	# Setup temp directories
 	my $tmpdir = tempdir('git-diffall.XXXXX', CLEANUP => 1, TMPDIR => 1);
-- 
1.7.11.4

Re: [PATCH] difftool: silence warning

From: David Aguilar <hidden>
Date: 2016-06-15 22:54:32

On Mon, Aug 20, 2012 at 11:59 PM, Ross Lagerwall
[off-list ref] wrote:
Silence a warning given when running git difftool --dir-diff and
there are no changes.
This is because command_oneline returns undef when the command has no
output, not ''.

Signed-off-by: Ross Lagerwall <redacted>
Thanks

This patch is obviously correct, but it won't apply in git's "next" branch.
Can you please prepare a patch based on the version in next?


A small question on Perl style for the list... is it better say this?

   exit(0) unless $diffrtn;

or is it better to explicitly check for undef using defined($diffrtn)
like was done in this patch? I would assume that explicit is preferred.

quoted hunk
---
 git-difftool.perl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/git-difftool.perl b/git-difftool.perl
index ae1e052..1cfcbb3 100755
--- a/git-difftool.perl
+++ b/git-difftool.perl
@@ -117,7 +117,7 @@ sub setup_dir_diff
        # by Git->repository->command*.
        my $diffrepo = Git->repository(Repository => $repo_path, WorkingCopy => $workdir);
        my $diffrtn = $diffrepo->command_oneline('diff', '--raw', '--no-abbrev', '-z', @ARGV);
-       exit(0) if (length($diffrtn) == 0);
+       exit(0) unless defined($diffrtn);

        # Setup temp directories
        my $tmpdir = tempdir('git-diffall.XXXXX', CLEANUP => 1, TMPDIR => 1);
--
1.7.11.4
-- 
David

Re: [PATCH] difftool: silence warning

From: Ross Lagerwall <hidden>
Date: 2016-06-15 22:54:32

On 08/21/2012 11:04 AM, David Aguilar wrote:
This patch is obviously correct, but it won't apply in git's "next" branch.
Can you please prepare a patch based on the version in next?
Sure.
A small question on Perl style for the list... is it better say this?

   exit(0) unless $diffrtn;

or is it better to explicitly check for undef using defined($diffrtn)
like was done in this patch? I would assume that explicit is preferred.
It seems like defined() is used throughout git-difftool so I just used that.

Regards
-- 
Ross Lagerwall
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help