diff options
Diffstat (limited to 'third_party/git/ll-merge.c')
-rw-r--r-- | third_party/git/ll-merge.c | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/third_party/git/ll-merge.c b/third_party/git/ll-merge.c index d65a8971db73..5b8d46aedee7 100644 --- a/third_party/git/ll-merge.c +++ b/third_party/git/ll-merge.c @@ -32,20 +32,6 @@ struct ll_merge_driver { char *cmdline; }; -static struct attr_check *merge_attributes; -static struct attr_check *load_merge_attributes(void) -{ - if (!merge_attributes) - merge_attributes = attr_check_initl("merge", "conflict-marker-size", NULL); - return merge_attributes; -} - -void reset_merge_attributes(void) -{ - attr_check_free(merge_attributes); - merge_attributes = NULL; -} - /* * Built-in low-levels */ @@ -368,7 +354,7 @@ int ll_merge(mmbuffer_t *result_buf, struct index_state *istate, const struct ll_merge_options *opts) { - struct attr_check *check = load_merge_attributes(); + static struct attr_check *check; static const struct ll_merge_options default_opts; const char *ll_driver_name = NULL; int marker_size = DEFAULT_CONFLICT_MARKER_SIZE; @@ -383,6 +369,9 @@ int ll_merge(mmbuffer_t *result_buf, normalize_file(theirs, path, istate); } + if (!check) + check = attr_check_initl("merge", "conflict-marker-size", NULL); + git_check_attr(istate, path, check); ll_driver_name = check->items[0].value; if (check->items[1].value) { |