version 1.76, 2005/05/22 17:47:53 |
version 1.77, 2005/05/24 04:12:25 |
|
|
cvs_file_getpath(CVSFILE *file, char *buf, size_t len) |
cvs_file_getpath(CVSFILE *file, char *buf, size_t len) |
{ |
{ |
u_int i; |
u_int i; |
char *fp, *namevec[CVS_FILE_MAXDEPTH]; |
const char *fp, *namevec[CVS_FILE_MAXDEPTH]; |
CVSFILE *top; |
CVSFILE *top; |
|
|
buf[0] = '\0'; |
buf[0] = '\0'; |
|
|
} |
} |
|
|
while ((ent = readdir(dirp)) != NULL) { |
while ((ent = readdir(dirp)) != NULL) { |
if (!strcmp(ent->d_name, ".") || |
|
!strcmp(ent->d_name, "..")) |
|
continue; |
|
|
|
if ((flags & CF_IGNORE) && cvs_file_chkign(ent->d_name)) |
if ((flags & CF_IGNORE) && cvs_file_chkign(ent->d_name)) |
continue; |
continue; |
|
|
|
|
} else { |
} else { |
if (cf->cf_tag != NULL) |
if (cf->cf_tag != NULL) |
cvs_strfree(cf->cf_tag); |
cvs_strfree(cf->cf_tag); |
|
if (cf->cf_opts != NULL) |
|
cvs_strfree(cf->cf_opts); |
} |
} |
|
|
free(cf); |
free(cf); |
|
|
cfp->cf_lrev = ent->ce_rev; |
cfp->cf_lrev = ent->ce_rev; |
ent->ce_rev = NULL; |
ent->ce_rev = NULL; |
|
|
if ((ent->ce_type == CVS_ENT_REG) && |
if (ent->ce_type == CVS_ENT_FILE) { |
(ent->ce_tag != NULL)) { |
if (ent->ce_tag[0] != '\0') { |
if ((cfp->cf_tag = cvs_strdup(ent->ce_tag)) == NULL) { |
cfp->cf_tag = cvs_strdup(ent->ce_tag); |
cvs_file_free(cfp); |
if (cfp->cf_tag == NULL) { |
return (NULL); |
cvs_file_free(cfp); |
|
return (NULL); |
|
} |
|
} |
|
|
|
if (ent->ce_opts[0] != '\0') { |
|
cfp->cf_opts = cvs_strdup(ent->ce_opts); |
|
if (cfp->cf_opts == NULL) { |
|
cvs_file_free(cfp); |
|
return (NULL); |
|
} |
} |
} |
} |
} |
} |
} |