Changeset 34 for trunk/src/sh_files.c


Ignore:
Timestamp:
May 19, 2006, 8:09:51 PM (18 years ago)
Author:
rainer
Message:

Code cleanup and minor fixes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/sh_files.c

    r27 r34  
    200200
    201201  dirstack_t * ptr;
    202   char       * base;
     202  char       * dir;
    203203  char       * file;
    204204 
     
    215215      if (ptr->checked == S_FALSE)
    216216        {
    217           base = sh_util_basename (ptr->name);
    218           file = sh_util_filename (ptr->name);
     217          dir  = sh_util_dirname (ptr->name);
     218          file = sh_util_basename (ptr->name);
    219219#if defined(WITH_TPT)
    220220          tmp = sh_util_safe_name (ptr->name);
     
    231231
    232232          BREAKEXIT(sh_files_filecheck);
    233           status = sh_files_filecheck (ptr->class, base, file,
     233          status = sh_files_filecheck (ptr->class, dir, file,
    234234                                       (int *) &(ptr->reported), 0);
    235235         
     
    348348            }
    349349          SH_FREE(file);
    350           SH_FREE(base);
     350          SH_FREE(dir);
    351351
    352352          ptr->checked = S_TRUE;
     
    729729#endif
    730730
    731 int sh_files_push_file_int (int class, const char * str_s, int len)
     731int sh_files_push_file_int (int class, const char * str_s, size_t len)
    732732{
    733733  dirstack_t * new_item_ptr;
     
    777777static int sh_files_pushfile (int class, const char * str_s)
    778778{
    779   int     len;
     779  size_t  len;
    780780  char  * tmp;
    781781  char  * p;
     
    11321132}
    11331133
    1134 int sh_files_push_dir_int (int class, char * tail, int len, int rdepth)
     1134int sh_files_push_dir_int (int class, char * tail, size_t len, int rdepth)
    11351135{
    11361136  zAVLTree   * tree;
     
    11941194{
    11951195  char  * tmp;
    1196   int     len;
     1196  size_t  len;
    11971197  int     rdepth = 0;
    11981198  char  * tail = NULL;
     
    13261326  SH_FREE(p);
    13271327  SL_RETURN((0), _("sh_files_pushdir"));
    1328 } 
     1328}
    13291329
    13301330struct sh_dirent {
     
    13541354{
    13551355  struct sh_dirent * this;
    1356   int i;
     1356  size_t len;
    13571357
    13581358  if (thisEntry == NULL)
    13591359    return dirlist;
    13601360 
    1361   i = sl_strlen(thisEntry->d_name);
    1362   if (i == 0)
     1361  len = sl_strlen(thisEntry->d_name);
     1362  if (len == 0)
    13631363    return dirlist;
    1364   ++i;
     1364  ++len;
    13651365 
    13661366  this = SH_ALLOC(sizeof(struct sh_dirent));
     
    13681368    return dirlist;
    13691369
    1370   this->sh_d_name = SH_ALLOC(i);
    1371   sl_strlcpy(this->sh_d_name, thisEntry->d_name, i);
     1370  this->sh_d_name = SH_ALLOC(len);
     1371  sl_strlcpy(this->sh_d_name, thisEntry->d_name, len);
    13721372
    13731373  this->next = dirlist;
     
    14921492
    14931493  int             hardlink_num = 0;
    1494 
     1494#if !defined(HOST_IS_DARWIN)
     1495  size_t          len;
     1496#endif
    14951497
    14961498  SL_ENTER(_("sh_files_checkdir"));
     
    18661868      if (0 != sh_files_hle_test(hardlink_num-theDir.NumDirs, iname))
    18671869        {
    1868           tmpcat = SH_ALLOC(strlen(tmpname) + 256);
    1869           sl_snprintf(tmpcat, strlen(tmpname) + 256,
     1870          len = strlen(tmpname);
     1871          if (sl_ok_adds(len, 256))
     1872            len += 256;
     1873          tmpcat = SH_ALLOC(len);
     1874          sl_snprintf(tmpcat, len,
    18701875                      _("%s: subdirectory count (%d) != hardlinks (%d)"),
    18711876                      tmpname, theDir.NumDirs, hardlink_num);
     
    18861891
    18871892static ShFileType sh_files_filecheck (int class, char * dirName,
    1888                                       char * fileName,
     1893                                      char * infileName,
    18891894                                      int * reported,
    18901895                                      int rsrcflag)
     
    18981903  char          * tmpdir;
    18991904  char          * tmpname;
     1905  char          * fileName;
    19001906  struct utimbuf  utime_buf;
    19011907
     
    19051911  if (0 == (rand() % 2))
    19061912    (void) sh_derr();
     1913
     1914  if (dirName && infileName && (dirName[0] == '/') && (dirName[1] == '\0')
     1915      && (infileName[0] == '/') && (infileName[1] == '\0'))
     1916    {
     1917      fileName = NULL;
     1918    }
     1919  else
     1920    {
     1921      fileName = infileName;
     1922    }
    19071923
    19081924  /* fileName may be NULL if this is a directory
Note: See TracChangeset for help on using the changeset viewer.