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

Diff for /src/usr.bin/make/arch.c between version 1.47 and 1.48

version 1.47, 2001/05/30 00:43:00 version 1.48, 2001/06/05 11:59:10
Line 99 
Line 99 
 #include "timestamp.h"  #include "timestamp.h"
 #include "lst.h"  #include "lst.h"
   
   #ifndef PATH_MAX
   # ifdef MAXPATHLEN
   #  define PATH_MAX (MAXPATHLEN+1)
   # else
   #  define PATH_MAX      1024
   # endif
   #endif
   
 #ifdef TARGET_MACHINE  #ifdef TARGET_MACHINE
 #undef MACHINE  #undef MACHINE
 #define MACHINE TARGET_MACHINE  #define MACHINE TARGET_MACHINE
Line 436 
Line 444 
         size_t          n;          size_t          n;
         struct ar_hdr   arh;    /* Archive-member header for reading archive */          struct ar_hdr   arh;    /* Archive-member header for reading archive */
         off_t           size;   /* Size of archive member */          off_t           size;   /* Size of archive member */
         char            buffer[MAXPATHLEN+1];          char            buffer[PATH_MAX];
         char            *memName;          char            *memName;
                                 /* Current member name while hashing. */                                  /* Current member name while hashing. */
         char            *cp;    /* Useful character pointer */          char            *cp;    /* Useful character pointer */
Line 499 
Line 507 
   
                 int elen = atoi(memName + sizeof(AR_EFMT1)-1);                  int elen = atoi(memName + sizeof(AR_EFMT1)-1);
   
                 if (elen <= 0 || elen > MAXPATHLEN)                  if (elen <= 0 || elen >= PATH_MAX)
                         break;                          break;
                 memName = buffer;                  memName = buffer;
                 if (fread(memName, elen, 1, arch) != 1)                  if (fread(memName, elen, 1, arch) != 1)
Line 822 
Line 830 
          * first <namelen> bytes of the file.  */           * first <namelen> bytes of the file.  */
         if (memcmp(memName, AR_EFMT1, sizeof(AR_EFMT1) - 1) == 0 &&          if (memcmp(memName, AR_EFMT1, sizeof(AR_EFMT1) - 1) == 0 &&
             isdigit(memName[sizeof(AR_EFMT1) - 1])) {              isdigit(memName[sizeof(AR_EFMT1) - 1])) {
             char          ename[MAXPATHLEN+1];              char          ename[PATH_MAX];
   
             int elen = atoi(memName + sizeof(AR_EFMT1)-1);              int elen = atoi(memName + sizeof(AR_EFMT1)-1);
   
             if (elen <= 0 || elen > MAXPATHLEN)              if (elen <= 0 || elen >= PATH_MAX)
                 break;                  break;
             if (fread(ename, elen, 1, arch) != 1)              if (fread(ename, elen, 1, arch) != 1)
                 break;                  break;

Legend:
Removed from v.1.47  
changed lines
  Added in v.1.48