Lines Matching defs:rec
87 struct mail_index_alloc_cache_list **indexp, *rec, *match;
93 rec = *indexp;
98 } else if (rec->refcount == 0 && rec->index->open_count == 0) {
101 } else if (index_dir != NULL && rec->index_dir_ino != 0) {
102 if (index_st->st_ino == rec->index_dir_ino &&
103 CMP_DEV_T(index_st->st_dev, rec->index_dir_dev)) {
107 if (stat(rec->index->dir, &st) < 0 ||
110 rec->destroy_time = 0;
112 match = rec;
114 } else if (mailbox_path != NULL && rec->mailbox_path != NULL &&
115 index_dir == NULL && rec->index_dir_ino == 0) {
116 if (strcmp(mailbox_path, rec->mailbox_path) == 0)
117 match = rec;
120 if (rec->refcount == 0 && rec != match) {
121 if (rec->destroy_time <= ioloop_time ||
123 *indexp = rec->next;
124 mail_index_alloc_cache_list_free(rec);
173 struct mail_index_alloc_cache_list **list, *rec;
178 rec = *list;
180 if (rec->refcount == 0 &&
181 (min_destroy_count > 0 || rec->destroy_time <= ioloop_time)) {
182 *list = rec->next;
184 mail_index_alloc_cache_list_free(rec);
188 if (rec->refcount == 0)
191 rec->index->open_count == 1 &&
192 rec->referenced) {
198 mail_index_alloc_cache_list_unref(rec);