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

Diff for /src/usr.bin/cvs/diff.c between version 1.70 and 1.71

version 1.70, 2005/12/05 19:53:00 version 1.71, 2005/12/10 20:27:45
Line 357 
Line 357 
 {  {
         int ch;          int ch;
   
         dap = (struct diff_arg *)malloc(sizeof(*dap));          dap = (struct diff_arg *)xmalloc(sizeof(*dap));
         if (dap == NULL)  
                 return (CVS_EX_DATA);  
         dap->date1 = dap->date2 = dap->rev1 = dap->rev2 = NULL;          dap->date1 = dap->date2 = dap->rev1 = dap->rev2 = NULL;
         strlcpy(diffargs, argv[0], sizeof(diffargs));          strlcpy(diffargs, argv[0], sizeof(diffargs));
   
Line 434 
Line 432 
 cvs_diff_cleanup(void)  cvs_diff_cleanup(void)
 {  {
         if (dap != NULL) {          if (dap != NULL) {
                 free(dap);                  xfree(dap);
                 dap = NULL;                  dap = NULL;
         }          }
         return (0);          return (0);
Line 767 
Line 765 
   
         member = (int *)file[1];          member = (int *)file[1];
         equiv(sfile[0], slen[0], sfile[1], slen[1], member);          equiv(sfile[0], slen[0], sfile[1], slen[1], member);
         if ((tmp = realloc(member, (slen[1] + 2) * sizeof(int))) == NULL) {          tmp = xrealloc(member, (slen[1] + 2) * sizeof(int));
                 free(member);  
                 member = NULL;  
                 cvs_log(LP_ERRNO, "failed to resize member");  
                 goto closem;  
         }  
         member = (int *)tmp;          member = (int *)tmp;
   
         class = (int *)file[0];          class = (int *)file[0];
         unsort(sfile[0], slen[0], class);          unsort(sfile[0], slen[0], class);
         if ((tmp = realloc(class, (slen[0] + 2) * sizeof(int))) == NULL) {          tmp = xrealloc(class, (slen[0] + 2) * sizeof(int));
                 free(class);  
                 class = NULL;  
                 cvs_log(LP_ERRNO, "failed to resize class");  
                 goto closem;  
         }  
         class = (int *)tmp;          class = (int *)tmp;
   
         if ((klist = malloc((slen[0] + 2) * sizeof(int))) == NULL) {          klist = xmalloc((slen[0] + 2) * sizeof(int));
                 cvs_log(LP_ERRNO, "failed to allocate klist");  
                 goto closem;  
         }  
         clen = 0;          clen = 0;
         clistlen = 100;          clistlen = 100;
         if ((clist = malloc(clistlen * sizeof(cand))) == NULL) {          clist = xmalloc(clistlen * sizeof(cand));
                 cvs_log(LP_ERRNO, "failed to allocate clist");  
                 goto closem;  
         }  
   
         if ((i = stone(class, slen[0], member, klist)) < 0)          if ((i = stone(class, slen[0], member, klist)) < 0)
                 goto closem;                  goto closem;
   
         free(member);          xfree(member);
         free(class);          xfree(class);
   
         if ((tmp = realloc(J, (diff_len[0] + 2) * sizeof(int))) == NULL) {          tmp = xrealloc(J, (diff_len[0] + 2) * sizeof(int));
                 free(J);  
                 J = NULL;  
                 cvs_log(LP_ERRNO, "failed to resize J");  
                 goto closem;  
         }  
         J = (int *)tmp;          J = (int *)tmp;
         unravel(klist[i]);          unravel(klist[i]);
         free(clist);          xfree(clist);
         free(klist);          xfree(klist);
   
         if ((tmp = realloc(ixold, (diff_len[0] + 2) * sizeof(long))) == NULL) {          tmp = xrealloc(ixold, (diff_len[0] + 2) * sizeof(long));
                 free(ixold);  
                 ixold = NULL;  
                 cvs_log(LP_ERRNO, "failed to resize ixold");  
                 goto closem;  
         }  
         ixold = (long *)tmp;          ixold = (long *)tmp;
         if ((tmp = realloc(ixnew, (diff_len[1] + 2) * sizeof(long))) == NULL) {  
                 free(ixnew);          tmp = xrealloc(ixnew, (diff_len[1] + 2) * sizeof(long));
                 ixnew = NULL;  
                 cvs_log(LP_ERRNO, "failed to resize ixnew");  
                 goto closem;  
         }  
         ixnew = (long *)tmp;          ixnew = (long *)tmp;
         check(f1, f2);          check(f1, f2);
         output(file1, f1, file2, f2);          output(file1, f1, file2, f2);
Line 885 
Line 853 
         if (sz < 100)          if (sz < 100)
                 sz = 100;                  sz = 100;
   
         p = (struct line *)malloc((sz + 3) * sizeof(struct line));          p = (struct line *)xmalloc((sz + 3) * sizeof(struct line));
         if (p == NULL) {  
                 cvs_log(LP_ERRNO, "failed to prepare line array");  
                 return (-1);  
         }  
         for (j = 0; (h = readhash(fd));) {          for (j = 0; (h = readhash(fd));) {
                 if (j == (int)sz) {                  if (j == (int)sz) {
                         sz = sz * 3 / 2;                          sz = sz * 3 / 2;
                         tmp = realloc(p, (sz + 3) * sizeof(struct line));                          tmp = xrealloc(p, (sz + 3) * sizeof(struct line));
                         if (tmp == NULL) {  
                                 cvs_log(LP_ERRNO, "failed to grow line array");  
                                 free(p);  
                                 return (-1);  
                         }  
                         p = (struct line *)tmp;                          p = (struct line *)tmp;
                 }                  }
                 p[++j].value = h;                  p[++j].value = h;
Line 1038 
Line 997 
   
         if (clen == clistlen) {          if (clen == clistlen) {
                 newclistlen = clistlen * 11 / 10;                  newclistlen = clistlen * 11 / 10;
                 tmp = realloc(clist, newclistlen * sizeof(cand));                  tmp = xrealloc(clist, newclistlen * sizeof(cand));
                 if (tmp == NULL) {  
                         cvs_log(LP_ERRNO, "failed to resize clist");  
                         return (-1);  
                 }  
                 clist = tmp;                  clist = tmp;
                 clistlen = newclistlen;                  clistlen = newclistlen;
         }          }
Line 1232 
Line 1187 
 {  {
         int *a, i;          int *a, i;
   
         if ((a = (int *)malloc((l + 1) * sizeof(int))) == NULL) {          a = (int *)xmalloc((l + 1) * sizeof(int));
                 cvs_log(LP_ERRNO, "failed to allocate sort array");  
                 return;  
         }  
         for (i = 1; i <= l; i++)          for (i = 1; i <= l; i++)
                 a[f[i].serial] = f[i].value;                  a[f[i].serial] = f[i].value;
         for (i = 1; i <= l; i++)          for (i = 1; i <= l; i++)
                 b[i] = a[i];                  b[i] = a[i];
         free(a);          xfree(a);
 }  }
   
 static int  static int
Line 1318 
Line 1270 
         char *line;          char *line;
         ssize_t nr;          ssize_t nr;
   
         line = malloc(rlen + 1);          line = xmalloc(rlen + 1);
         if (line == NULL) {  
                 cvs_log(LP_ERRNO, "failed to allocate line");  
                 return (NULL);  
         }  
         if ((nr = pread(fd, line, rlen, off)) < 0) {          if ((nr = pread(fd, line, rlen, off)) < 0) {
                 cvs_log(LP_ERRNO, "preadline failed");                  cvs_log(LP_ERRNO, "preadline failed");
                 return (NULL);                  return (NULL);
Line 1337 
Line 1285 
         int ret;          int ret;
   
         ret = regexec(&ignore_re, line, (size_t)0, NULL, 0);          ret = regexec(&ignore_re, line, (size_t)0, NULL, 0);
         free(line);          xfree(line);
         return (ret == 0);      /* if it matched, it should be ignored. */          return (ret == 0);      /* if it matched, it should be ignored. */
 }  }
   
Line 1391 
Line 1339 
                         struct context_vec *tmp;                          struct context_vec *tmp;
                         ptrdiff_t offset = context_vec_ptr - context_vec_start;                          ptrdiff_t offset = context_vec_ptr - context_vec_start;
                         max_context <<= 1;                          max_context <<= 1;
                         if ((tmp = realloc(context_vec_start, max_context *                          tmp = xrealloc(context_vec_start, max_context *
                             sizeof(struct context_vec))) == NULL) {                              sizeof(struct context_vec));
                                 free(context_vec_start);  
                                 context_vec_start = NULL;  
                                 cvs_log(LP_ERRNO,  
                                     "failed to resize context_vec_start");  
                                 return;  
                         }  
                         context_vec_start = tmp;                          context_vec_start = tmp;
                         context_vec_end = context_vec_start + max_context;                          context_vec_end = context_vec_start + max_context;
                         context_vec_ptr = context_vec_start + offset;                          context_vec_ptr = context_vec_start + offset;
Line 1836 
Line 1778 
                 cvs_buf_append(diffbuf, str, strlen(str));                  cvs_buf_append(diffbuf, str, strlen(str));
         else          else
                 cvs_printf("%s", str);                  cvs_printf("%s", str);
         free(str);          xfree(str);
         va_end(vap);          va_end(vap);
 }  }

Legend:
Removed from v.1.70  
changed lines
  Added in v.1.71