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

Diff for /src/usr.bin/mail/names.c between version 1.6 and 1.7

version 1.6, 1997/07/14 00:24:29 version 1.7, 1997/07/24 17:27:12
Line 230 
Line 230 
         char *date, *fname;          char *date, *fname;
         FILE *fout, *fin;          FILE *fout, *fin;
         int ispipe;          int ispipe;
         extern char *tempEdit;  
   
         top = names;          top = names;
         np = names;          np = names;
Line 253 
Line 252 
                  */                   */
   
                 if (image < 0) {                  if (image < 0) {
                         if ((fout = Fopen(tempEdit, "a")) == NULL) {                          int fd;
                                 warn(tempEdit);                          char tempname[PATHSIZE];
   
                           (void)snprintf(tempname, sizeof(tempname),
                               "%s/mail.ReXXXXXXXXXX", tmpdir);
                           if ((fd = mkstemp(tempname)) == -1 ||
                               (fout = Fdopen(fd, "a")) == NULL) {
                                   warn(tempname);
                                 senderr++;                                  senderr++;
                                 goto cant;                                  goto cant;
                         }                          }
                         image = open(tempEdit, 2);                          image = open(tempname, O_RDWR);
                         (void)unlink(tempEdit);                          (void)rm(tempname);
                         if (image < 0) {                          if (image < 0) {
                                 warn(tempEdit);                                  warn(tempname);
                                 senderr++;                                  senderr++;
                                 (void)Fclose(fout);                                  (void)Fclose(fout);
                                 goto cant;                                  goto cant;
Line 275 
Line 280 
                         (void)putc('\n', fout);                          (void)putc('\n', fout);
                         (void)fflush(fout);                          (void)fflush(fout);
                         if (ferror(fout))                          if (ferror(fout))
                                 warn(tempEdit);                                  warn(tempname);
                         (void)Fclose(fout);                          (void)Fclose(fout);
                 }                  }
   

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