builtin-read-tree.c: avoid tree_entry_list in prime_cache_tree_rec()
[git.git] / http-push.c
index 994ee90..f492a5d 100644 (file)
@@ -6,6 +6,7 @@
 #include "blob.h"
 #include "http.h"
 #include "refs.h"
+#include "diff.h"
 #include "revision.h"
 #include "exec_cmd.h"
 
@@ -59,12 +60,12 @@ enum XML_Status {
 #define LOCK_TIME 600
 #define LOCK_REFRESH 30
 
-/* bits #0-6 in revision.h */
+/* bits #0-15 in revision.h */
 
-#define LOCAL    (1u << 7)
-#define REMOTE   (1u << 8)
-#define FETCHING (1u << 9)
-#define PUSHING  (1u << 10)
+#define LOCAL    (1u<<16)
+#define REMOTE   (1u<<17)
+#define FETCHING (1u<<18)
+#define PUSHING  (1u<<19)
 
 /* We allow "recursive" symbolic refs. Only within reason, though */
 #define MAXDEPTH 5
@@ -1732,9 +1733,9 @@ static struct object_list **process_tree(struct tree *tree,
        while (entry) {
                struct tree_entry_list *next = entry->next;
                if (entry->directory)
-                       p = process_tree(entry->item.tree, p, &me, entry->name);
+                       p = process_tree(lookup_tree(entry->sha1), p, &me, entry->name);
                else
-                       p = process_blob(entry->item.blob, p, &me, entry->name);
+                       p = process_blob(lookup_blob(entry->sha1), p, &me, entry->name);
                free(entry);
                entry = next;
        }
@@ -2497,6 +2498,7 @@ int main(int argc, char **argv)
                        commit_argv[3] = old_sha1_hex;
                        commit_argc++;
                }
+               init_revisions(&revs);
                setup_revisions(commit_argc, commit_argv, &revs, NULL);
                free(new_sha1_hex);
                if (old_sha1_hex) {