Fix memory leak when RAND is used: need to cleanup
[openssl.git] / e_os2.h
diff --git a/e_os2.h b/e_os2.h
index 272faad39cc0ba3579e405176e55eb3b59aab099..5ebd7481ee7260123cb57c64cb3084ccf55aff7c 100644 (file)
--- a/e_os2.h
+++ b/e_os2.h
@@ -223,8 +223,8 @@ extern "C" {
        #define foobar OPENSSL_GLOBAL_REF(foobar)
 */
 #ifdef OPENSSL_EXPORT_VAR_AS_FUNCTION
-# define OPENSSL_IMPLEMENT_GLOBAL(type,name) extern static type _hide_##name; \
-        type *_shadow_##name(void) { static type local_var; return &local_var; } \
+# define OPENSSL_IMPLEMENT_GLOBAL(type,name) static type _hide_##name; \
+        type *_shadow_##name(void) { return &_hide_##name; } \
         static type _hide_##name
 # define OPENSSL_DECLARE_GLOBAL(type,name) type *_shadow_##name(void)
 # define OPENSSL_GLOBAL_REF(name) (*(_shadow_##name()))