--- a/mercurial/logcmdutil.py Thu Sep 07 08:39:21 2023 +0200
+++ b/mercurial/logcmdutil.py Wed Nov 15 02:39:53 2023 +0100
@@ -11,18 +11,18 @@
import posixpath
from .i18n import _
-from .node import nullrev, wdirrev
+from .node import wdirrev
from .thirdparty import attr
from . import (
dagop,
+ diffutil,
error,
formatter,
graphmod,
match as matchmod,
mdiff,
- merge,
patch,
pathutil,
pycompat,
@@ -69,35 +69,6 @@
return limit
-def diff_parent(ctx):
- """get the context object to use as parent when diffing
-
-
- If diff.merge is enabled, an overlayworkingctx of the auto-merged parents will be returned.
- """
- repo = ctx.repo()
- if repo.ui.configbool(b"diff", b"merge") and ctx.p2().rev() != nullrev:
- # avoid cycle context -> subrepo -> cmdutil -> logcmdutil
- from . import context
-
- wctx = context.overlayworkingctx(repo)
- wctx.setbase(ctx.p1())
- with repo.ui.configoverride(
- {
- (
- b"ui",
- b"forcemerge",
- ): b"internal:merge3-lie-about-conflicts",
- },
- b"merge-diff",
- ):
- with repo.ui.silent():
- merge.merge(ctx.p2(), wc=wctx)
- return wctx
- else:
- return ctx.p1()
-
-
def get_diff_chunks(
ui,
repo,
@@ -273,7 +244,7 @@
ui,
ctx.repo(),
diffopts,
- diff_parent(ctx),
+ diffutil.diff_parent(ctx),
ctx,
match=self._makefilematcher(ctx),
stat=stat,
@@ -286,7 +257,7 @@
ui,
ctx.repo(),
diffopts,
- diff_parent(ctx),
+ diffutil.diff_parent(ctx),
ctx,
match=self._makefilematcher(ctx),
stat=stat,