From 1d430056f4817f48b0cf212a3aa27f8e26a7a7c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Carlos=20Mart=C3=ADn=20Nieto?= Date: Mon, 30 Jun 2014 09:19:05 +0200 Subject: ssl: init only once without threads The OpenSSL library-loading functions do not expect to be called multiple times. Add a flag in the non-threaded libgit2 init so we only call once. This fixes #2446. --- src/global.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/global.c b/src/global.c index 03a4bced..c72bfe89 100644 --- a/src/global.c +++ b/src/global.c @@ -291,7 +291,13 @@ static git_global_st __state; int git_threads_init(void) { - init_ssl(); + static int ssl_inited = 0; + + if (!ssl_inited) { + init_ssl(); + ssl_inited = 1; + } + git_atomic_inc(&git__n_inits); return 0; } -- cgit v1.2.1