Merge pull request #4229 from pks-t/pks/ssh-memleaks

libssh2 shutdown
This commit is contained in:
Edward Thomson 2017-05-02 16:03:41 +01:00 committed by GitHub
commit 7849e46757
2 changed files with 14 additions and 2 deletions

View File

@ -22,7 +22,7 @@
git_mutex git__mwindow_mutex;
#define MAX_SHUTDOWN_CB 8
#define MAX_SHUTDOWN_CB 9
static git_global_shutdown_fn git__shutdown_callbacks[MAX_SHUTDOWN_CB];
static git_atomic git__n_shutdown_callbacks;

View File

@ -9,6 +9,7 @@
#include <libssh2.h>
#endif
#include "global.h"
#include "git2.h"
#include "buffer.h"
#include "netops.h"
@ -893,11 +894,22 @@ int git_transport_ssh_with_paths(git_transport **out, git_remote *owner, void *p
#endif
}
#ifdef GIT_SSH
static void shutdown_ssh(void)
{
libssh2_exit();
}
#endif
int git_transport_ssh_global_init(void)
{
#ifdef GIT_SSH
if (libssh2_init(0) < 0) {
giterr_set(GITERR_SSH, "unable to initialize libssh2");
return -1;
}
libssh2_init(0);
git__on_shutdown(shutdown_ssh);
return 0;
#else