You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by sa...@apache.org on 2006/03/24 08:34:48 UTC

svn commit: r388432 - in /webservices/axis2/trunk/c: include/axis2_module.h modules/core/deployment/conf_init.c modules/core/description/module_desc.c modules/mod_addr/mod_addr.c

Author: samisa
Date: Thu Mar 23 23:34:46 2006
New Revision: 388432

URL: http://svn.apache.org/viewcvs?rev=388432&view=rev
Log:
Fixed memory leaks due to non call of shutdown

Modified:
    webservices/axis2/trunk/c/include/axis2_module.h
    webservices/axis2/trunk/c/modules/core/deployment/conf_init.c
    webservices/axis2/trunk/c/modules/core/description/module_desc.c
    webservices/axis2/trunk/c/modules/mod_addr/mod_addr.c

Modified: webservices/axis2/trunk/c/include/axis2_module.h
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/include/axis2_module.h?rev=388432&r1=388431&r2=388432&view=diff
==============================================================================
--- webservices/axis2/trunk/c/include/axis2_module.h (original)
+++ webservices/axis2/trunk/c/include/axis2_module.h Thu Mar 23 23:34:46 2006
@@ -62,8 +62,7 @@
     /* initialize the module */
     axis2_status_t (AXIS2_CALL *
     init) (struct axis2_module *module, 
-            axis2_env_t **env, 
-            struct axis2_conf *axis2_system);
+            axis2_env_t **env);
 
     /* TODO figure out how to get the engage() concept done */
     /* public void engage(ExecutionChain exeChain) throws AxisFault; */
@@ -71,8 +70,7 @@
     /* shutdown the module */
     axis2_status_t (AXIS2_CALL * 
     shutdown)(struct axis2_module *module,
-                axis2_env_t **env, 
-                struct axis2_conf *axis2_system);
+                axis2_env_t **env);
     
     /** 
      * Return a hash map of handler create functions for the module
@@ -100,11 +98,11 @@
 
 /*************************** Function macros **********************************/
 
-#define AXIS2_MODULE_INIT(module, env, conf) \
-		((module)->ops->init (module, env, conf))
+#define AXIS2_MODULE_INIT(module, env) \
+		((module)->ops->init (module, env)) 
 
-#define AXIS2_MODULE_SHUTDOWN(module, env, conf) \
-		((module)->ops->shutdown (module, env, conf))
+#define AXIS2_MODULE_SHUTDOWN(module, env) \
+		((module)->ops->shutdown (module, env)) 
 
 #define AXIS2_MODULE_FILL_HANDLER_CREATE_FUNC_MAP(module, env) \
 		((module)->ops->fill_handler_create_func_map (module, env))

Modified: webservices/axis2/trunk/c/modules/core/deployment/conf_init.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/deployment/conf_init.c?rev=388432&r1=388431&r2=388432&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/deployment/conf_init.c (original)
+++ webservices/axis2/trunk/c/modules/core/deployment/conf_init.c Thu Mar 23 23:34:46 2006
@@ -134,7 +134,7 @@
                     {
                         axis2_module_t *mod = AXIS2_MODULE_DESC_GET_MODULE(mod_desc, env);
                         if (mod)
-                            AXIS2_MODULE_INIT(mod, env, conf);
+                            AXIS2_MODULE_INIT(mod, env);
                     }
                 }
             }

Modified: webservices/axis2/trunk/c/modules/core/description/module_desc.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/core/description/module_desc.c?rev=388432&r1=388431&r2=388432&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/core/description/module_desc.c (original)
+++ webservices/axis2/trunk/c/modules/core/description/module_desc.c Thu Mar 23 23:34:46 2006
@@ -264,6 +264,12 @@
     
     module_desc_impl = AXIS2_INTF_TO_IMPL(module_desc);
     
+    if(module_desc_impl->module)
+    {
+        AXIS2_MODULE_SHUTDOWN(module_desc_impl->module, env);
+        module_desc_impl->module = NULL;
+    }
+    
     if(module_desc->params)
     {
         AXIS2_PARAM_CONTAINER_FREE(module_desc->params, env);

Modified: webservices/axis2/trunk/c/modules/mod_addr/mod_addr.c
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/c/modules/mod_addr/mod_addr.c?rev=388432&r1=388431&r2=388432&view=diff
==============================================================================
--- webservices/axis2/trunk/c/modules/mod_addr/mod_addr.c (original)
+++ webservices/axis2/trunk/c/modules/mod_addr/mod_addr.c Thu Mar 23 23:34:46 2006
@@ -18,14 +18,11 @@
 
 axis2_status_t AXIS2_CALL
 axis2_mod_addr_shutdown(axis2_module_t *module,
-                        axis2_env_t **env,
-                        axis2_conf_t *axis2_system);
+                        axis2_env_t **env);
 
 axis2_status_t AXIS2_CALL
 axis2_mod_addr_init(axis2_module_t *module,
-                        axis2_env_t **env,
-                        axis2_conf_t *axis2_system);
-
+                        axis2_env_t **env);
 
 axis2_status_t AXIS2_CALL
 axis2_mod_addr_fill_handler_create_func_map(axis2_module_t *module,
@@ -52,8 +49,7 @@
 
 axis2_status_t AXIS2_CALL
 axis2_mod_addr_init(axis2_module_t *module,
-                        axis2_env_t **env,
-                        axis2_conf_t *axis2_system)
+                        axis2_env_t **env)
 {
     /* Any initialization stuff of mod_addr goes here */
     return AXIS2_SUCCESS;
@@ -61,8 +57,7 @@
 
 axis2_status_t AXIS2_CALL
 axis2_mod_addr_shutdown(axis2_module_t *module,
-                        axis2_env_t **env,
-                        axis2_conf_t *axis2_system)
+                        axis2_env_t **env)
 {
     if(module->ops)
     {
@@ -133,7 +128,7 @@
     axis2_status_t status = AXIS2_FAILURE;
 	if (inst)
 	{
-        status = axis2_mod_addr_shutdown(inst, env, NULL);
+        status = axis2_mod_addr_shutdown(inst, env);
     }
     return status;
 }