aboutsummaryrefslogtreecommitdiff
path: root/xdiff-interface.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-11-15 12:04:52 +0900
committerJunio C Hamano <gitster@pobox.com>2017-11-15 12:04:52 +0900
commitbb2c9262a5eff9e4d6ddca23f6e0787afbd7b091 (patch)
tree28cff0d13641cf2f64193b73a9d71f6eb31ba814 /xdiff-interface.c
parentfd506238f0f067e5bc2d310882007132364f76f2 (diff)
parent01be97c2b285e8ba377ba58385ef6ad2e7815c93 (diff)
downloadgit-bb2c9262a5eff9e4d6ddca23f6e0787afbd7b091.tar.gz
git-bb2c9262a5eff9e4d6ddca23f6e0787afbd7b091.tar.xz
Merge branch 'sb/diff-color-moved-use-xdl-recmatch' into maint
Instead of using custom line comparison and hashing functions to implement "moved lines" coloring in the diff output, use the pair of these functions from lower-layer xdiff/ code. * sb/diff-color-moved-use-xdl-recmatch: diff.c: get rid of duplicate implementation xdiff-interface: export comparing and hashing strings
Diffstat (limited to 'xdiff-interface.c')
-rw-r--r--xdiff-interface.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/xdiff-interface.c b/xdiff-interface.c
index 018e03308..770e1f7f8 100644
--- a/xdiff-interface.c
+++ b/xdiff-interface.c
@@ -5,6 +5,7 @@
#include "xdiff/xdiffi.h"
#include "xdiff/xemit.h"
#include "xdiff/xmacros.h"
+#include "xdiff/xutils.h"
struct xdiff_emit_state {
xdiff_emit_consume_fn consume;
@@ -296,6 +297,17 @@ void xdiff_clear_find_func(xdemitconf_t *xecfg)
}
}
+unsigned long xdiff_hash_string(const char *s, size_t len, long flags)
+{
+ return xdl_hash_record(&s, s + len, flags);
+}
+
+int xdiff_compare_lines(const char *l1, long s1,
+ const char *l2, long s2, long flags)
+{
+ return xdl_recmatch(l1, s1, l2, s2, flags);
+}
+
int git_xmerge_style = -1;
int git_xmerge_config(const char *var, const char *value, void *cb)