[BACK]Return to forward.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / tail

Diff for /src/usr.bin/tail/forward.c between version 1.19 and 1.20

version 1.19, 2004/03/01 16:35:05 version 1.20, 2004/03/12 19:40:05
Line 89 
Line 89 
 {  {
         int ch;          int ch;
         struct stat nsb;          struct stat nsb;
         int kq;          int kq, queue;
         struct kevent ke;          struct kevent ke;
   
         switch(style) {          switch(style) {
Line 206 
Line 206 
                 if (!fflag)                  if (!fflag)
                         break;                          break;
                 clearerr(fp);                  clearerr(fp);
                   queue = 1;
                 if (kq < 0 || kevent(kq, NULL, 0, &ke, 1, NULL) <= 0) {                  if (kq < 0 || kevent(kq, NULL, 0, &ke, 1, NULL) <= 0) {
                           queue = 0;
                         sleep(1);                          sleep(1);
                 } else if (ke.filter == EVFILT_READ) {                  } else if (ke.filter == EVFILT_READ) {
                         continue;                          continue;
Line 235 
Line 237 
                         }                          }
                         (void)memcpy(sbp, &nsb, sizeof(nsb));                          (void)memcpy(sbp, &nsb, sizeof(nsb));
                         goto kq_retry;                          goto kq_retry;
                 } else if (ke.fflags & NOTE_TRUNCATE) {                  } else if ((queue && (ke.fflags & NOTE_TRUNCATE)) ||
                       (!queue && nsb.st_size < sbp->st_size)) {
                         warnx("%s has been truncated, resetting.", fname);                          warnx("%s has been truncated, resetting.", fname);
                         fpurge(fp);                          fpurge(fp);
                         rewind(fp);                          rewind(fp);

Legend:
Removed from v.1.19  
changed lines
  Added in v.1.20