void index_search_item::add_out_of_date_file(int fd, const char *filename, int fid) { search_item **pp; for (pp = &out_of_date_files; *pp; pp = &(*pp)->next) if ((*pp)->is_named(filename)) return; *pp = make_linear_search_item(fd, filename, fid); warning("`%1' modified since `%2' created", filename, name); }
void search_list::add_file(const char *filename, int silent) { search_item *p = make_index_search_item(filename, next_fid); if (!p) { int fd = open(filename, O_RDONLY | O_BINARY); if (fd < 0) { if (!silent) error("can't open `%1': %2", filename, strerror(errno)); } else p = make_linear_search_item(fd, filename, next_fid); } if (p) { search_item **pp; for (pp = &list; *pp; pp = &(*pp)->next) ; *pp = p; next_fid = p->next_filename_id(); } }