From: Nikos Mavrogiannopoulos Date: Sat, 30 Nov 2013 18:16:45 +0000 (+0100) Subject: removed deadlock from gnutls_global.c X-Git-Tag: gnutls_3_3_0pre0~514 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f34f0f750bc604ab7a531958f06a737976cd1aed;p=thirdparty%2Fgnutls.git removed deadlock from gnutls_global.c --- diff --git a/lib/gnutls_global.c b/lib/gnutls_global.c index f96551c32e..4e8043efa3 100644 --- a/lib/gnutls_global.c +++ b/lib/gnutls_global.c @@ -210,7 +210,8 @@ int gnutls_global_init2(unsigned int flags) flags &= ~loaded_modules; if (flags == 0) { /* The requested were already loaded */ - return 0; + ret = 0; + goto out; } if (!(flags & GNUTLS_GLOBAL_INIT_MINIMAL) && @@ -235,8 +236,10 @@ int gnutls_global_init2(unsigned int flags) _gnutls_debug_log("Enabled GnuTLS logging...\n"); } - if (gl_sockets_startup(SOCKETS_1_1)) - return gnutls_assert_val(GNUTLS_E_SOCKETS_INIT_ERROR); + if (gl_sockets_startup(SOCKETS_1_1)) { + ret = gnutls_assert_val(GNUTLS_E_SOCKETS_INIT_ERROR); + goto out; + } bindtextdomain(PACKAGE, LOCALEDIR);