diff options
Diffstat (limited to 'builtin/log.c')
| -rw-r--r-- | builtin/log.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/builtin/log.c b/builtin/log.c index 93ace0dde7..a7d624f4a7 100644 --- a/builtin/log.c +++ b/builtin/log.c @@ -35,6 +35,7 @@ #include "repository.h" #include "commit-reach.h" #include "range-diff.h" +#include "tmp-objdir.h" #define MAIL_DEFAULT_WRAP 72 #define COVER_FROM_AUTO_MAX_SUBJECT_LEN 100 @@ -421,6 +422,14 @@ static int cmd_log_walk(struct rev_info *rev) struct commit *commit; int saved_nrl = 0; int saved_dcctc = 0; + struct tmp_objdir *remerge_objdir = NULL; + + if (rev->remerge_diff) { + remerge_objdir = tmp_objdir_create("remerge-diff"); + if (!remerge_objdir) + die(_("unable to create temporary object directory")); + tmp_objdir_replace_primary_odb(remerge_objdir, 1); + } if (rev->early_output) setup_early_output(); @@ -464,6 +473,9 @@ static int cmd_log_walk(struct rev_info *rev) rev->diffopt.no_free = 0; diff_free(&rev->diffopt); + if (rev->remerge_diff) + tmp_objdir_destroy(remerge_objdir); + if (rev->diffopt.output_format & DIFF_FORMAT_CHECKDIFF && rev->diffopt.flags.check_failed) { return 02; @@ -1958,6 +1970,8 @@ int cmd_format_patch(int argc, const char **argv, const char *prefix) die(_("--name-status does not make sense")); if (rev.diffopt.output_format & DIFF_FORMAT_CHECKDIFF) die(_("--check does not make sense")); + if (rev.remerge_diff) + die(_("--remerge-diff does not make sense")); if (!use_patch_format && (!rev.diffopt.output_format || |
