]> git.ipfire.org Git - thirdparty/gnutls.git/commitdiff
removed deadlock from gnutls_global.c
authorNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 30 Nov 2013 18:16:45 +0000 (19:16 +0100)
committerNikos Mavrogiannopoulos <nmav@gnutls.org>
Sat, 30 Nov 2013 18:16:45 +0000 (19:16 +0100)
lib/gnutls_global.c

index f96551c32e8b156b8d98fe50bedb9dbf46e7bc38..4e8043efa39651c30c01347e0ed0edc26c2eafd3 100644 (file)
@@ -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);