tests: allow user to specify trash directory location
[gitweb.git] / dir.h
diff --git a/dir.h b/dir.h
index bdc2d47447c2ca406aac41d7a8382bf5928fbda8..a6314464f9e0d896f131e08434228d5b1130a4f5 100644 (file)
--- a/dir.h
+++ b/dir.h
@@ -34,11 +34,13 @@ struct exclude_stack {
 struct dir_struct {
        int nr, alloc;
        int ignored_nr, ignored_alloc;
-       unsigned int show_ignored:1,
-                    show_other_directories:1,
-                    hide_empty_directories:1,
-                    no_gitlinks:1,
-                    collect_ignored:1;
+       enum {
+               DIR_SHOW_IGNORED = 1<<0,
+               DIR_SHOW_OTHER_DIRECTORIES = 1<<1,
+               DIR_HIDE_EMPTY_DIRECTORIES = 1<<2,
+               DIR_NO_GITLINKS = 1<<3,
+               DIR_COLLECT_IGNORED = 1<<4
+       } flags;
        struct dir_entry **entries;
        struct dir_entry **ignored;
 
@@ -59,14 +61,13 @@ struct dir_struct {
        char basebuf[PATH_MAX];
 };
 
-extern int common_prefix(const char **pathspec);
-
 #define MATCHED_RECURSIVELY 1
 #define MATCHED_FNMATCH 2
 #define MATCHED_EXACTLY 3
 extern int match_pathspec(const char **pathspec, const char *name, int namelen, int prefix, char *seen);
 
-extern int read_directory(struct dir_struct *, const char *path, const char *base, int baselen, const char **pathspec);
+extern int fill_directory(struct dir_struct *dir, const char **pathspec);
+extern int read_directory(struct dir_struct *, const char *path, int len, const char **pathspec);
 
 extern int excluded(struct dir_struct *, const char *, int *);
 extern void add_excludes_from_file(struct dir_struct *, const char *fname);