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

Diff for /src/usr.bin/uniq/uniq.c between version 1.28 and 1.29

version 1.28, 2021/11/01 23:20:35 version 1.29, 2021/11/17 23:09:38
Line 60 
Line 60 
         char *prevline, *t1, *t2, *thisline;          char *prevline, *t1, *t2, *thisline;
         FILE *ifp = NULL, *ofp = NULL;          FILE *ifp = NULL, *ofp = NULL;
         size_t prevsize, thissize, tmpsize;          size_t prevsize, thissize, tmpsize;
           ssize_t len;
         int ch;          int ch;
   
         setlocale(LC_CTYPE, "");          setlocale(LC_CTYPE, "");
Line 133 
Line 134 
   
         prevsize = 0;          prevsize = 0;
         prevline = NULL;          prevline = NULL;
         if (getline(&prevline, &prevsize, ifp) == -1) {          if ((len = getline(&prevline, &prevsize, ifp)) == -1) {
                 free(prevline);                  free(prevline);
                 if (ferror(ifp))                  if (ferror(ifp))
                         err(1, "getline");                          err(1, "getline");
                 exit(0);                  exit(0);
         }          }
           if (prevline[len - 1] == '\n')
                   prevline[len - 1] = '\0';
   
         thissize = 0;          thissize = 0;
         thisline = NULL;          thisline = NULL;
         while (getline(&thisline, &thissize, ifp) != -1) {          while ((len = getline(&thisline, &thissize, ifp)) != -1) {
                   if (thisline[len - 1] == '\n')
                           thisline[len - 1] = '\0';
   
                 /* If requested get the chosen fields + character offsets. */                  /* If requested get the chosen fields + character offsets. */
                 if (numfields || numchars) {                  if (numfields || numchars) {
                         t1 = skip(thisline);                          t1 = skip(thisline);
Line 185 
Line 191 
 {  {
         if ((dflag && repeats) || (uflag && !repeats)) {          if ((dflag && repeats) || (uflag && !repeats)) {
                 if (cflag)                  if (cflag)
                         (void)fprintf(ofp, "%4d %s", repeats + 1, str);                          fprintf(ofp, "%4d %s\n", repeats + 1, str);
                 else                  else
                         (void)fprintf(ofp, "%s", str);                          fprintf(ofp, "%s\n", str);
         }          }
 }  }
   

Legend:
Removed from v.1.28  
changed lines
  Added in v.1.29