summaryrefslogtreecommitdiff
path: root/xdiff-interface.h
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2015-09-28 14:59:28 -0700
committerJunio C Hamano <gitster@pobox.com>2015-09-28 14:59:28 -0700
commit92cdfd21313c5bf5657d4ac2d3e6ae7af7e9ce94 (patch)
tree1ee5bd8057292fc6dfa9edc58b3c2cc7b990f8ab /xdiff-interface.h
parentf2df3104ce45bc1ee6d7c16f3a02f1d157c65e07 (diff)
parent83c4d380171a2ecd24dd2e04072692ec54a7aaa5 (diff)
downloadgit-92cdfd21313c5bf5657d4ac2d3e6ae7af7e9ce94.tar.xz
Merge branch 'jk/xdiff-memory-limits' into maint-2.3
Diffstat (limited to 'xdiff-interface.h')
-rw-r--r--xdiff-interface.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/xdiff-interface.h b/xdiff-interface.h
index eff7762ee1..fbb5a1c394 100644
--- a/xdiff-interface.h
+++ b/xdiff-interface.h
@@ -3,6 +3,13 @@
#include "xdiff/xdiff.h"
+/*
+ * xdiff isn't equipped to handle content over a gigabyte;
+ * we make the cutoff 1GB - 1MB to give some breathing
+ * room for constant-sized additions (e.g., merge markers)
+ */
+#define MAX_XDIFF_SIZE (1024UL * 1024 * 1023)
+
typedef void (*xdiff_emit_consume_fn)(void *, char *, unsigned long);
int xdi_diff(mmfile_t *mf1, mmfile_t *mf2, xpparam_t const *xpp, xdemitconf_t const *xecfg, xdemitcb_t *ecb);