summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarlos Martín Nieto <cmn@dwim.me>2015-06-11 07:17:34 +0200
committerCarlos Martín Nieto <cmn@dwim.me>2015-06-11 07:17:34 +0200
commitfa934fabf76c06e843e9bb22d6679b3e882c3e4e (patch)
tree6b97465bbccfbbe7ad4171250f5633fe043f45dc /src
parent3fcfede184535274999cbdf7afbbf457fc6987b5 (diff)
parent2eecc2886be68496bb9555e4c93e59e985a7d09f (diff)
downloadlibgit2-fa934fabf76c06e843e9bb22d6679b3e882c3e4e.tar.gz
Merge pull request #3205 from ethomson/crlf_query
Introduce `git_filter_list_contains`
Diffstat (limited to 'src')
-rw-r--r--src/filter.c24
1 files changed, 23 insertions, 1 deletions
diff --git a/src/filter.c b/src/filter.c
index 3c6a0a9d8..e25d37c35 100644
--- a/src/filter.c
+++ b/src/filter.c
@@ -27,6 +27,7 @@ struct git_filter_source {
};
typedef struct {
+ const char *filter_name;
git_filter *filter;
void *payload;
} git_filter_entry;
@@ -526,7 +527,9 @@ int git_filter_list__load_ext(
fe = git_array_alloc(fl->filters);
GITERR_CHECK_ALLOC(fe);
- fe->filter = fdef->filter;
+
+ fe->filter = fdef->filter;
+ fe->filter_name = fdef->filter_name;
fe->payload = payload;
}
}
@@ -574,6 +577,25 @@ void git_filter_list_free(git_filter_list *fl)
git__free(fl);
}
+int git_filter_list_contains(
+ git_filter_list *fl,
+ const char *name)
+{
+ size_t i;
+
+ assert(name);
+
+ if (!fl)
+ return 0;
+
+ for (i = 0; i < fl->filters.size; i++) {
+ if (strcmp(fl->filters.ptr[i].filter_name, name) == 0)
+ return 1;
+ }
+
+ return 0;
+}
+
int git_filter_list_push(
git_filter_list *fl, git_filter *filter, void *payload)
{