mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-08 22:08:56 +00:00
commit
2a09de91a8
10
src/global.c
10
src/global.c
@ -87,11 +87,6 @@ static void shutdown_common(void)
|
||||
|
||||
git__free(git__user_agent);
|
||||
git__free(git__ssl_ciphers);
|
||||
|
||||
#if defined(GIT_MSVC_CRTDBG)
|
||||
git_win32__crtdbg_stacktrace_cleanup();
|
||||
git_win32__stack_cleanup();
|
||||
#endif
|
||||
}
|
||||
|
||||
/**
|
||||
@ -183,6 +178,11 @@ int git_libgit2_shutdown(void)
|
||||
|
||||
TlsFree(_tls_index);
|
||||
git_mutex_free(&git__mwindow_mutex);
|
||||
|
||||
#if defined(GIT_MSVC_CRTDBG)
|
||||
git_win32__crtdbg_stacktrace_cleanup();
|
||||
git_win32__stack_cleanup();
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Exit the lock */
|
||||
|
@ -400,11 +400,17 @@ static int winhttp_stream_connect(winhttp_stream *s)
|
||||
return -1;
|
||||
}
|
||||
|
||||
gitno_connection_data_free_ptrs(&t->proxy_connection_data);
|
||||
|
||||
if ((error = gitno_extract_url_parts(&t->proxy_connection_data.host, &t->proxy_connection_data.port, NULL,
|
||||
&t->proxy_connection_data.user, &t->proxy_connection_data.pass, proxy_url, NULL)) < 0)
|
||||
goto on_error;
|
||||
|
||||
if (t->proxy_connection_data.user && t->proxy_connection_data.pass) {
|
||||
if (t->proxy_cred) {
|
||||
t->proxy_cred->free(t->proxy_cred);
|
||||
}
|
||||
|
||||
if ((error = git_cred_userpass_plaintext_new(&t->proxy_cred, t->proxy_connection_data.user, t->proxy_connection_data.pass)) < 0)
|
||||
goto on_error;
|
||||
}
|
||||
@ -425,10 +431,11 @@ static int winhttp_stream_connect(winhttp_stream *s)
|
||||
}
|
||||
|
||||
/* Convert URL to wide characters */
|
||||
if ((error = git__utf8_to_16_alloc(&proxy_wide, processed_url.ptr)) < 0)
|
||||
error = git__utf8_to_16_alloc(&proxy_wide, processed_url.ptr);
|
||||
git_buf_free(&processed_url);
|
||||
if (error < 0)
|
||||
goto on_error;
|
||||
|
||||
|
||||
proxy_info.dwAccessType = WINHTTP_ACCESS_TYPE_NAMED_PROXY;
|
||||
proxy_info.lpszProxy = proxy_wide;
|
||||
proxy_info.lpszProxyBypass = NULL;
|
||||
@ -1481,12 +1488,19 @@ static int winhttp_close(git_smart_subtransport *subtransport)
|
||||
|
||||
gitno_connection_data_free_ptrs(&t->connection_data);
|
||||
memset(&t->connection_data, 0x0, sizeof(gitno_connection_data));
|
||||
gitno_connection_data_free_ptrs(&t->proxy_connection_data);
|
||||
memset(&t->proxy_connection_data, 0x0, sizeof(gitno_connection_data));
|
||||
|
||||
if (t->cred) {
|
||||
t->cred->free(t->cred);
|
||||
t->cred = NULL;
|
||||
}
|
||||
|
||||
if (t->proxy_cred) {
|
||||
t->proxy_cred->free(t->proxy_cred);
|
||||
t->proxy_cred = NULL;
|
||||
}
|
||||
|
||||
if (t->url_cred) {
|
||||
t->url_cred->free(t->url_cred);
|
||||
t->url_cred = NULL;
|
||||
|
@ -240,8 +240,7 @@ static int make_submodule_dirty(git_submodule *sm, const char *name, void *paylo
|
||||
));
|
||||
git_futils_rmdir_r(git_buf_cstr(&submodulepath), NULL, GIT_RMDIR_REMOVE_FILES);
|
||||
|
||||
/* initialize submodule and its repository */
|
||||
cl_git_pass(git_submodule_init(sm, 1));
|
||||
/* initialize submodule's repository */
|
||||
cl_git_pass(git_submodule_repo_init(&submodule_repo, sm, 0));
|
||||
|
||||
/* create a file in the submodule workdir to make it dirty */
|
||||
@ -251,6 +250,7 @@ static int make_submodule_dirty(git_submodule *sm, const char *name, void *paylo
|
||||
|
||||
git_buf_free(&dirtypath);
|
||||
git_buf_free(&submodulepath);
|
||||
git_repository_free(submodule_repo);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user