summaryrefslogtreecommitdiff
path: root/userdiff.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2010-05-08 22:33:08 -0700
committerJunio C Hamano <gitster@pobox.com>2010-05-08 22:33:08 -0700
commitdd75d07899653258587b854ce0e3f7f1b90610cf (patch)
treed95fd2d3ec348a0304717f58f0b4c8931908e760 /userdiff.c
parent3ecaa3b6a5f707617ea610d727c696f43f8b2f0b (diff)
parentb3373982667dc983b8dacf33861d25b20bafb995 (diff)
downloadgit-dd75d07899653258587b854ce0e3f7f1b90610cf.tar.gz
Merge branch 'jk/cached-textconv'
* jk/cached-textconv: diff: avoid useless filespec population diff: cache textconv output textconv: refactor calls to run_textconv introduce notes-cache interface make commit_tree a library function
Diffstat (limited to 'userdiff.c')
-rw-r--r--userdiff.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/userdiff.c b/userdiff.c
index df992490d5..67003fbb23 100644
--- a/userdiff.c
+++ b/userdiff.c
@@ -1,3 +1,4 @@
+#include "cache.h"
#include "userdiff.h"
#include "cache.h"
#include "attr.h"
@@ -167,6 +168,12 @@ static int parse_tristate(int *b, const char *k, const char *v)
return 1;
}
+static int parse_bool(int *b, const char *k, const char *v)
+{
+ *b = git_config_bool(k, v);
+ return 1;
+}
+
int userdiff_config(const char *k, const char *v)
{
struct userdiff_driver *drv;
@@ -181,6 +188,8 @@ int userdiff_config(const char *k, const char *v)
return parse_string(&drv->external, k, v);
if ((drv = parse_driver(k, v, "textconv")))
return parse_string(&drv->textconv, k, v);
+ if ((drv = parse_driver(k, v, "cachetextconv")))
+ return parse_bool(&drv->textconv_want_cache, k, v);
if ((drv = parse_driver(k, v, "wordregex")))
return parse_string(&drv->word_regex, k, v);