Skip to content

Commit 04835f7

Browse files
committed
Update clone with new API for callbacks
1 parent 9ad1a94 commit 04835f7

File tree

1 file changed

+7
-10
lines changed

1 file changed

+7
-10
lines changed

ObjectiveGit/GTRepository.m

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -194,8 +194,6 @@ static void checkoutProgressCallback(const char *path, size_t completedSteps, si
194194
block(nsPath, completedSteps, totalSteps);
195195
}
196196

197-
#if 0
198-
199197
static int transferProgressCallback(const git_transfer_progress *progress, void *payload) {
200198
if (payload == NULL) return 0;
201199
struct GTClonePayload *pld = payload;
@@ -220,10 +218,8 @@ static int remoteCreate(git_remote **remote, git_repository *repo, const char *n
220218
return GIT_OK;
221219
}
222220

223-
#endif
224-
225221
+ (instancetype)cloneFromURL:(NSURL *)originURL toWorkingDirectory:(NSURL *)workdirURL options:(NSDictionary *)options error:(NSError **)error transferProgressBlock:(void (^)(const git_transfer_progress *, BOOL *stop))transferProgressBlock checkoutProgressBlock:(void (^)(NSString *path, NSUInteger completedSteps, NSUInteger totalSteps))checkoutProgressBlock {
226-
#if 0
222+
227223
git_clone_options cloneOptions = GIT_CLONE_OPTIONS_INIT;
228224

229225
NSNumber *bare = options[GTRepositoryCloneOptionsBare];
@@ -245,16 +241,18 @@ + (instancetype)cloneFromURL:(NSURL *)originURL toWorkingDirectory:(NSURL *)work
245241
.credProvider = {provider},
246242
};
247243

248-
cloneOptions.remote_callbacks.version = GIT_REMOTE_CALLBACKS_VERSION;
244+
git_fetch_options fetchOptions = GIT_FETCH_OPTIONS_INIT;
245+
246+
fetchOptions.callbacks.version = GIT_REMOTE_CALLBACKS_VERSION;
249247

250248
if (provider) {
251-
cloneOptions.remote_callbacks.credentials = GTCredentialAcquireCallback;
249+
fetchOptions.callbacks.credentials = GTCredentialAcquireCallback;
252250
}
253251

254252
payload.transferProgressBlock = transferProgressBlock;
255253

256-
cloneOptions.remote_callbacks.transfer_progress = transferProgressCallback;
257-
cloneOptions.remote_callbacks.payload = &payload;
254+
fetchOptions.callbacks.transfer_progress = transferProgressCallback;
255+
fetchOptions.callbacks.payload = &payload;
258256

259257
cloneOptions.remote_cb = remoteCreate;
260258

@@ -288,7 +286,6 @@ + (instancetype)cloneFromURL:(NSURL *)originURL toWorkingDirectory:(NSURL *)work
288286
}
289287

290288
return [[self alloc] initWithGitRepository:repository];
291-
#endif
292289

293290
return nil;
294291
}

0 commit comments

Comments
 (0)