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

Diff for /src/usr.bin/patch/backupfile.c between version 1.7 and 1.8

version 1.7, 1999/12/04 21:00:03 version 1.8, 2003/04/05 17:17:53
Line 155 
Line 155 
      int version;       int version;
 {  {
   char *backup_name;    char *backup_name;
     size_t len;
   
   backup_name = malloc (strlen (file) + 16);    len = strlen (file) + 16;
     backup_name = malloc (len);
   if (backup_name == 0)    if (backup_name == 0)
     return 0;      return 0;
   sprintf (backup_name, "%s.~%d~", file, version);    snprintf (backup_name, len, "%s.~%d~", file, version);
   return backup_name;    return backup_name;
 }  }
   
Line 195 
Line 197 
      char *str1, *str2;       char *str1, *str2;
 {  {
   char *newstr;    char *newstr;
   int str1_length = strlen (str1);  
   
   newstr = malloc (str1_length + strlen (str2) + 1);    if (asprintf(&newstr, "%s%s", str1, str2) == -1)
   if (newstr == 0)  
     return 0;      return 0;
   strcpy (newstr, str1);  
   strcpy (newstr + str1_length, str2);  
   return newstr;    return newstr;
 }  }
   

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.8