long lineno
[2] = {1, 1}; /*no. of 1st stored line in each file*/
int ntext
[2]; /*number of stored lines in each*/
long n0
,n1
; /*scan pointer in each*/
/* return pointer to line n of file f*/
t
= text
[f
][nt
] = malloc(LEN
+1);
t
= fgets(t
,LEN
,file
[f
]);
/*remove thru line n of file f from storage*/
for(i
=0;i
+j
<ntext
[f
];i
++)
movstr(text
[f
][i
+j
],text
[f
][i
]);
error("must have 2 file arguments","");
file
[0] = dopen(argv
[1],argv
[2]);
file
[1] = dopen(argv
[2],argv
[1]);
if(!easysynch()&&!hardsynch())
/* synch on C successive matches*/
for(i
=j
=1;i
<RANGE
&&j
<RANGE
;i
++,j
++) {
if(bflag
&&isspace(*s
)&&isspace(*t
)) {
error("can't do - -","");
if(stat(f1
,&statbuf
)==-1)
error("can't access ",f1
);
if((statbuf
.st_mode
&S_IFMT
)==S_IFDIR
) {
for(bptr
=b
;*bptr
= *f1
++;bptr
++) ;
for(eptr
=f2
;*eptr
;eptr
++)
if(*eptr
=='/'&&eptr
[1]!=0&&eptr
[1]!='/')
error("program error ",s
);
fprintf(stderr
,"diffh: %s%s\n",s
,t
);
/*stub for resychronization beyond limits of text buf*/
change(n0
,INF
,n1
,INF
,"c");
printf("---change record omitted\n");
error("can't resynchronize","");