@@ -110,9 +110,10 @@ typedef enum {
110110/**
111111 * Submodule update options structure
112112 *
113- * Use the GIT_SUBMODULE_UPDATE_OPTIONS_INIT to get the default settings, like this:
113+ * Use the GIT_SUBMODULE_UPDATE_OPTIONS_INIT to get the default settings,
114+ * like this:
114115 *
115- * git_submodule_update_options opts = GIT_SUBMODULE_UPDATE_OPTIONS_INIT;
116+ * git_submodule_update_options opts = GIT_SUBMODULE_UPDATE_OPTIONS_INIT;
116117 */
117118typedef struct git_submodule_update_options {
118119 unsigned int version ;
@@ -149,7 +150,21 @@ typedef struct git_submodule_update_options {
149150} git_submodule_update_options ;
150151
151152#define GIT_SUBMODULE_UPDATE_OPTIONS_VERSION 1
152- #define GIT_SUBMODULE_UPDATE_OPTIONS_INIT {GIT_CHECKOUT_OPTIONS_VERSION, {GIT_CHECKOUT_OPTIONS_VERSION, GIT_CHECKOUT_SAFE}, GIT_REMOTE_CALLBACKS_INIT, GIT_CHECKOUT_SAFE_CREATE}
153+ #define GIT_SUBMODULE_UPDATE_OPTIONS_INIT \
154+ { GIT_CHECKOUT_OPTIONS_VERSION, \
155+ { GIT_CHECKOUT_OPTIONS_VERSION, GIT_CHECKOUT_SAFE}, \
156+ GIT_REMOTE_CALLBACKS_INIT, GIT_CHECKOUT_SAFE_CREATE }
157+
158+ /**
159+ * Initializes a `git_submodule_update_options` with default values.
160+ * Equivalent to creating an instance with GIT_SUBMODULE_UPDATE_OPTIONS_INIT.
161+ *
162+ * @param opts The `git_submodule_update_options` instance to initialize.
163+ * @param version Version of struct; pass `GIT_SUBMODULE_UPDATE_OPTIONS_VERSION`
164+ * @return Zero on success; -1 on failure.
165+ */
166+ GIT_EXTERN (int ) git_submodule_update_init_options (
167+ git_submodule_update_options * opts , unsigned int version );
153168
154169/**
155170 * Update a submodule. This will clone a missing submodule and
0 commit comments