Lines Matching defs:dir
39 * @(#)dir.c 8.2 (Berkeley) 1/2/94
46 * dir.c --
99 #include "dir.h"
191 struct Dir *dir; /* pointer to the directory */
490 DirMatchFiles(word, pe->dir, expansions);
678 DEBUGF(DIR, ("%s...", pe->dir->name));
679 if (Hash_FindEntry(&pe->dir->files, cp) != NULL) {
692 p1 = pe->dir->name + strlen(pe->dir->name) - 1;
694 while (p2 >= name && p1 >= pe->dir->name &&
698 if (p2 >= name || (p1 >= pe->dir->name &&
705 file = str_concat(pe->dir->name, cp, STR_ADDSLASH);
707 pe->dir->hits += 1;
717 for (p1 = pe->dir->name, p2 = name; *p1 && *p1 == *p2;
756 if (pe->dir != dot) {
757 file = str_concat(pe->dir->name,
919 * truncate dirbase from the end to move up a dir
1011 DIR *dir; /* for reading directory */
1024 if (pe->dir == d)
1030 pe->dir = d;
1038 if ((dir = opendir(name)) == NULL) {
1049 while ((dp = readdir(dir)) != NULL) {
1073 closedir(dir);
1079 pe->dir = d;
1102 ped->dir = pes->dir;
1103 ped->dir->refCount++;
1131 tstr = str_concat(flag, pe->dir->name, 0);
1154 pe->dir->refCount--;
1156 if (pe->dir->refCount == 0) {
1157 TAILQ_REMOVE(&openDirectories, pe->dir, link);
1158 Hash_DeleteTable(&pe->dir->files);
1159 free(pe->dir->name);
1160 free(pe->dir);
1182 if (p1->dir == p2->dir)
1187 p1->dir = p2->dir;
1188 p1->dir->refCount++;
1216 printf("%s ", p->dir->name);