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;
}