[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: rcsdiff + revision symbolic names BUG
From: |
Aaron S. Hawley |
Subject: |
Re: rcsdiff + revision symbolic names BUG |
Date: |
Mon, 17 Oct 2005 15:47:02 -0400 (EDT) |
On Sat, 15 Oct 2005, Romain Francoise wrote:
> Your patch removes this 'intelligence' and as a result, rcsdiff will
> always skip diff generation when the revisions are identical, which is
> wrong if the user specified -y or -D.
>
> The "bug" is that RCS considers a long option name as a case where we
> don't know if diff(1) will produce output or not; indeed if the long
> options are --side-by-side or --ifdef (the long counterparts of -y and
> -D) then there will be output even if the revisions are identical.
Point taken. Then, here's an even smaller patch:
--- rcsdiff.c 2005/10/14 20:35:53 1.1
+++ rcsdiff.c 2005/10/17 19:44:10
@@ -215,7 +215,11 @@
}
goto option_handled;
case '-': case 'D':
- no_diff_means_no_output = false;
+ if (c == 'D'
+ || strcmp(*argv, "--side-by-side") == 0
+ || strcmp(*argv, "--ifdef") == 0) {
+ no_diff_means_no_output = false;
+ }
/* fall into */
case 'C': case 'F': case 'I': case 'L': case 'W':
#if DIFF_L
rcsdiff.c-option-fix.diff
Description: Text document