Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Jun 2012 20:54:01 +0000
From:      jhagewood@FreeBSD.org
To:        svn-soc-all@FreeBSD.org
Subject:   socsvn commit: r237629 - in soc2012/jhagewood: diff diff/diff diff3
Message-ID:  <20120613205401.A26021065673@hub.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jhagewood
Date: Wed Jun 13 20:54:01 2012
New Revision: 237629
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=237629

Log:

Modified:
  soc2012/jhagewood/diff/diff/diffreg.c
  soc2012/jhagewood/diff/hagewood-diff.patch
  soc2012/jhagewood/diff3/hagewood-diff3.patch

Modified: soc2012/jhagewood/diff/diff/diffreg.c
==============================================================================
--- soc2012/jhagewood/diff/diff/diffreg.c	Wed Jun 13 20:52:57 2012	(r237628)
+++ soc2012/jhagewood/diff/diff/diffreg.c	Wed Jun 13 20:54:01 2012	(r237629)
@@ -766,7 +766,6 @@
 			ixnew[j] = ctnew += skipline(f2);
 			j++;
 		}
-		/* XXX Implement functionality for Eflag here */
 		if (bflag || wflag || iflag || Bflag || Eflag) {
 			for (;;) {
 				c = getc(f1);
@@ -804,28 +803,41 @@
 					}
 
 				} else if (Bflag) {
-					if( c == '\n' && d != '\n') {
-
+					if(c == '\n' && d != '\n') {
 						do {
 							if (c == '\n') {
 							      ixold[i] = ctold; 
 							      i++;
 							}
-
 						} while ((c = getc(f1)) == '\n' && i <= len[0]);
 					}
-
-					if( d == '\n' && c != '\n') {
+					if (d == '\n' && c != '\n') {
 						do {
 							if (d == '\n') {
 								ixnew[j] = ctnew;
 								j++;
 							}
 						} while ((d = getc(f2)) == '\n' && j <= len[1]);
-		
 					}
-			
 					break;
+				/* TODO : ignore-tab-expansion */
+				} else if (Eflag) {
+					if (c == '\t' && d == ' ') {
+						do {
+							if (c == '\t') {
+							      ixold[i] = ctold; 
+							      i++;
+							}
+						} while ((c = getc(f1)) == '\t' && i <= len[0]);
+					}
+					if (d == '\t' && c == ' ') {
+						do {
+							if (d == '\t') {
+								ixnew[j] = ctnew;
+								j++;
+							}
+						} while ((d = getc(f2)) == '\t' && j <= len[1]);
+					}
 				}
 				if (chrtran[c] != chrtran[d]) {
 					jackpot++;

Modified: soc2012/jhagewood/diff/hagewood-diff.patch
==============================================================================
--- soc2012/jhagewood/diff/hagewood-diff.patch	Wed Jun 13 20:52:57 2012	(r237628)
+++ soc2012/jhagewood/diff/hagewood-diff.patch	Wed Jun 13 20:54:01 2012	(r237629)
@@ -69,18 +69,66 @@
  extern int	 format, context, status;
 diff -rupN jhagewood/diff/diff-orig/diffreg.c jhagewood/diff/diff/diffreg.c
 --- jhagewood/diff/diff-orig/diffreg.c	2012-06-10 03:31:05.000000000 -0400
-+++ jhagewood/diff/diff/diffreg.c	2012-06-13 05:11:57.000000000 -0400
-@@ -766,7 +766,8 @@ check(char *file1, FILE *f1, char *file2
++++ jhagewood/diff/diff/diffreg.c	2012-06-13 20:53:55.000000000 -0400
+@@ -766,7 +766,7 @@ check(char *file1, FILE *f1, char *file2
  			ixnew[j] = ctnew += skipline(f2);
  			j++;
  		}
 -		if (bflag || wflag || iflag || Bflag) {
-+		/* XXX Implement functionality for Eflag here */
 +		if (bflag || wflag || iflag || Bflag || Eflag) {
  			for (;;) {
  				c = getc(f1);
  				d = getc(f2);
-@@ -1551,16 +1552,33 @@ dump_unified_vec(FILE *f1, FILE *f2)
+@@ -803,28 +803,41 @@ check(char *file1, FILE *f1, char *file2
+ 					}
+ 
+ 				} else if (Bflag) {
+-					if( c == '\n' && d != '\n') {
+-
++					if(c == '\n' && d != '\n') {
+ 						do {
+ 							if (c == '\n') {
+ 							      ixold[i] = ctold; 
+ 							      i++;
+ 							}
+-
+ 						} while ((c = getc(f1)) == '\n' && i <= len[0]);
+ 					}
+-
+-					if( d == '\n' && c != '\n') {
++					if (d == '\n' && c != '\n') {
+ 						do {
+ 							if (d == '\n') {
+ 								ixnew[j] = ctnew;
+ 								j++;
+ 							}
+ 						} while ((d = getc(f2)) == '\n' && j <= len[1]);
+-		
+ 					}
+-			
+ 					break;
++				/* TODO : ignore-tab-expansion */
++				} else if (Eflag) {
++					if (c == '\t' && d == ' ') {
++						do {
++							if (c == '\t') {
++							      ixold[i] = ctold; 
++							      i++;
++							}
++						} while ((c = getc(f1)) == '\t' && i <= len[0]);
++					}
++					if (d == '\t' && c == ' ') {
++						do {
++							if (d == '\t') {
++								ixnew[j] = ctnew;
++								j++;
++							}
++						} while ((d = getc(f2)) == '\t' && j <= len[1]);
++					}
+ 				}
+ 				if (chrtran[c] != chrtran[d]) {
+ 					jackpot++;
+@@ -1551,16 +1564,33 @@ dump_unified_vec(FILE *f1, FILE *f2)
  static void
  print_header(const char *file1, const char *file2)
  {

Modified: soc2012/jhagewood/diff3/hagewood-diff3.patch
==============================================================================
--- soc2012/jhagewood/diff3/hagewood-diff3.patch	Wed Jun 13 20:52:57 2012	(r237628)
+++ soc2012/jhagewood/diff3/hagewood-diff3.patch	Wed Jun 13 20:54:01 2012	(r237629)
@@ -11,7 +11,7 @@
  .include <bsd.prog.mk>
 diff -rupN jhagewood/diff3/diff3-orig/diff3prog.c jhagewood/diff3/diff3/diff3prog.c
 --- jhagewood/diff3/diff3-orig/diff3prog.c	2012-06-10 03:31:05.000000000 -0400
-+++ jhagewood/diff3/diff3/diff3prog.c	2012-06-13 19:37:26.000000000 -0400
++++ jhagewood/diff3/diff3/diff3prog.c	2012-06-13 19:37:44.000000000 -0400
 @@ -64,22 +64,31 @@
   *	@(#)diff3.c	8.1 (Berkeley) 6/6/93
   */
@@ -25,7 +25,7 @@
  #endif
 +#endif /* not lint */
 +#include <sys/cdefs.h>
-+__FBSDID("$FreeBSD: soc2012/jhagewood/diff3/diff3/diff3prog.c 237579 2012-06-13 03:11:56Z jhagewood $");
++__FBSDID("$FreeBSD: soc2012/jhagewood/diff3/diff3/diff3prog.c 237623 2012-06-13 19:37:41Z jhagewood $");
  
 +#include <ctype.h>
 +#include <err.h>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120613205401.A26021065673>