travis: run tests with GIT_TEST_SPLIT_INDEX
[gitweb.git] / pack-objects.h
index 90ad0a8f4f8cc68f5594e388055cd3949a936a9a..03f1191659dab55b2c4c440c347101a3cdbd4650 100644 (file)
@@ -17,6 +17,7 @@ struct object_entry {
        enum object_type type;
        enum object_type in_pack_type;  /* could be delta */
        uint32_t hash;                  /* name hint hash */
+       unsigned int in_pack_pos;
        unsigned char in_pack_header_size;
        unsigned preferred_base:1; /*
                                    * we do not pack this, but is available
@@ -26,6 +27,19 @@ struct object_entry {
        unsigned no_try_delta:1;
        unsigned tagged:1; /* near the very tip of refs */
        unsigned filled:1; /* assigned write-order */
+
+       /*
+        * State flags for depth-first search used for analyzing delta cycles.
+        *
+        * The depth is measured in delta-links to the base (so if A is a delta
+        * against B, then A has a depth of 1, and B a depth of 0).
+        */
+       enum {
+               DFS_NONE = 0,
+               DFS_ACTIVE,
+               DFS_DONE
+       } dfs_state;
+       int depth;
 };
 
 struct packing_data {