]> git.ipfire.org Git - thirdparty/git.git/commitdiff
Merge branch 'jc/range-diff-lazy-setup'
authorJunio C Hamano <gitster@pobox.com>
Mon, 16 Sep 2024 21:22:54 +0000 (14:22 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 16 Sep 2024 21:22:55 +0000 (14:22 -0700)
Code clean-up.

* jc/range-diff-lazy-setup:
  remerge-diff: clean up temporary objdir at a central place
  remerge-diff: lazily prepare temporary objdir on demand

1  2 
builtin/describe.c
builtin/diff-index.c
builtin/diff-tree.c
builtin/diff.c
builtin/log.c
builtin/stash.c
builtin/submodule--helper.c
diff.c
diff.h
log-tree.c
wt-status.c

Simple merge
Simple merge
Simple merge
diff --cc builtin/diff.c
Simple merge
diff --cc builtin/log.c
Simple merge
diff --cc builtin/stash.c
index be842258d06c9080ce9abf8d9dc42c64269fa394,6dc70a6be2a7d76a73f2f05bf0a53f5b88509854..4a2a633ce374f9e23598308fc9f34ae9f6ff8504
@@@ -974,10 -972,8 +974,10 @@@ static int show_stash(int argc, const c
        }
        log_tree_diff_flush(&rev);
  
-       ret = diff_result_code(&rev.diffopt);
+       ret = diff_result_code(&rev);
 +
  cleanup:
 +      strvec_clear(&revision_args);
        strvec_clear(&stash_args);
        free_stash_info(&info);
        release_revisions(&rev);
Simple merge
diff --cc diff.c
Simple merge
diff --cc diff.h
Simple merge
diff --cc log-tree.c
index 04cef08b830d7c2880114253e47cf842d9435c80,83e648b7cd661dd5f66ad43674b3b28c9586290d..3758e0d3b8e415f2faa5b3d01ab27e45ad644470
@@@ -1015,8 -1019,19 +1015,19 @@@ static int do_remerge_diff(struct rev_i
        struct strbuf parent1_desc = STRBUF_INIT;
        struct strbuf parent2_desc = STRBUF_INIT;
  
+       /*
+        * Lazily prepare a temporary object directory and rotate it
+        * into the alternative object store list as the primary.
+        */
+       if (opt->remerge_diff && !opt->remerge_objdir) {
+               opt->remerge_objdir = tmp_objdir_create("remerge-diff");
+               if (!opt->remerge_objdir)
+                       return error(_("unable to create temporary object directory"));
+               tmp_objdir_replace_primary_odb(opt->remerge_objdir, 1);
+       }
        /* Setup merge options */
 -      init_merge_options(&o, the_repository);
 +      init_ui_merge_options(&o, the_repository);
        o.show_rename_progress = 0;
        o.record_conflict_msgs_as_headers = 1;
        o.msg_header_prefix = "remerge";
diff --cc wt-status.c
Simple merge