Lines Matching refs:oldsize
55 static off_t matchlen(u_char *old,off_t oldsize,u_char *new,off_t newsize)
59 for(i=0;(i<oldsize)&&(i<newsize);i++)
65 static off_t search(off_t *I,u_char *old,off_t oldsize,
71 x=matchlen(old+I[st],oldsize-I[st],new,newsize);
72 y=matchlen(old+I[en],oldsize-I[en],new,newsize);
84 if(memcmp(old+I[x],new,MIN(oldsize-I[x],newsize))<0) {
85 return search(I,old,oldsize,new,newsize,x,en,pos);
87 return search(I,old,oldsize,new,newsize,st,x,pos);
121 off_t oldsize,newsize;
140 /* Allocate oldsize+1 bytes instead of oldsize bytes to ensure
143 ((oldsize=lseek(fd,0,SEEK_END))==-1))
146 if (oldsize > SSIZE_MAX ||
147 (uintmax_t)oldsize >= SIZE_T_MAX / sizeof(off_t) ||
148 oldsize == OFF_MAX) {
153 if (((old=malloc(oldsize+1))==NULL) ||
155 (read(fd,old,oldsize)!=oldsize) ||
158 if(((I=malloc((oldsize+1)*sizeof(saidx_t)))==NULL)) err(1,NULL);
160 if(divsufsort(old, I, oldsize)) err(1, "divsufsort");
214 len=search(I,old,oldsize,new+scan,newsize-scan,
215 0,oldsize,&pos);
218 if((scsc+lastoffset<oldsize) &&
225 if((scan+lastoffset<oldsize) &&
232 for(i=0;(lastscan+i<scan)&&(lastpos+i<oldsize);) {