From c0dd7122da182517e77d1dde6f737dc9d0d0f28a Mon Sep 17 00:00:00 2001 From: Edward Thomson Date: Thu, 6 Jun 2019 16:48:04 -0400 Subject: apply: add an options struct initializer --- include/git2/apply.h | 4 +++- src/apply.c | 7 +++++++ tests/core/structinit.c | 5 +++++ 3 files changed, 15 insertions(+), 1 deletion(-) diff --git a/include/git2/apply.h b/include/git2/apply.h index 91f93d75d..384e11718 100644 --- a/include/git2/apply.h +++ b/include/git2/apply.h @@ -57,7 +57,7 @@ typedef int GIT_CALLBACK(git_apply_hunk_cb)( * Apply options structure * * Initialize with `GIT_APPLY_OPTIONS_INIT`. Alternatively, you can - * use `git_apply_init_options`. + * use `git_apply_options_init`. * * @see git_apply_to_tree, git_apply */ @@ -72,6 +72,8 @@ typedef struct { #define GIT_APPLY_OPTIONS_VERSION 1 #define GIT_APPLY_OPTIONS_INIT {GIT_APPLY_OPTIONS_VERSION} +GIT_EXTERN(int) git_apply_options_init(git_apply_options *opts, unsigned int version); + /** * Apply a `git_diff` to a `git_tree`, and return the resulting image * as an index. diff --git a/src/apply.c b/src/apply.c index 156221f17..fdafa662e 100644 --- a/src/apply.c +++ b/src/apply.c @@ -745,6 +745,13 @@ done: return error; } +int git_apply_options_init(git_apply_options *opts, unsigned int version) +{ + GIT_INIT_STRUCTURE_FROM_TEMPLATE( + opts, version, git_apply_options, GIT_APPLY_OPTIONS_INIT); + return 0; +} + /* * Handle the three application options ("locations"): * diff --git a/tests/core/structinit.c b/tests/core/structinit.c index 82286a210..f9da8237c 100644 --- a/tests/core/structinit.c +++ b/tests/core/structinit.c @@ -72,6 +72,11 @@ void test_core_structinit__compare(void) clar__skip(); #endif + /* apply */ + CHECK_MACRO_FUNC_INIT_EQUAL( \ + git_apply_options, GIT_APPLY_OPTIONS_VERSION, \ + GIT_APPLY_OPTIONS_INIT, git_apply_options_init); + /* blame */ CHECK_MACRO_FUNC_INIT_EQUAL( \ git_blame_options, GIT_BLAME_OPTIONS_VERSION, \ -- cgit v1.2.1