et_init should fail if eina_init fails
authorcaro <caro@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 4 Sep 2009 05:03:47 +0000 (05:03 +0000)
committercaro <caro@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 4 Sep 2009 05:03:47 +0000 (05:03 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/eet@42237 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/eet_lib.c

index 52fdeb3..d4ff121 100644 (file)
@@ -756,7 +756,17 @@ eet_init(void)
    OpenSSL_add_all_algorithms();
 #endif
 
-   eina_init();
+   if (!eina_init())
+     {
+#ifdef HAVE_GNUTLS
+       gnutls_global_deinit();
+#endif
+#ifdef HAVE_OPENSSL
+       EVP_cleanup();
+       ERR_free_strings();
+#endif
+       return 0;
+     }
 
    return eet_initcount;
 }
@@ -769,6 +779,8 @@ eet_shutdown(void)
    if (eet_initcount > 0) return eet_initcount;
 
    eet_clearcache();
+
+   eina_shutdown();
 #ifdef HAVE_GNUTLS
    gnutls_global_deinit();
 #endif
@@ -777,8 +789,6 @@ eet_shutdown(void)
    ERR_free_strings();
 #endif
 
-   eina_shutdown();
-
    return eet_initcount;
 }