Author: damitha
Date: Wed Jan 9 20:24:26 2008
New Revision: 610667
URL: http://svn.apache.org/viewvc?rev=610667&view=rev
Log:
Fixing memory leaks
Modified:
webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
webservices/sandesha/trunk/c/src/util/terminate_mgr.c
Modified: webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/ack_msg_processor.c Wed Jan
9 20:24:26 2008
@@ -231,6 +231,9 @@
axis2_engine_send_fault(engine, env, sandesha2_msg_ctx_get_msg_ctx(
fault_msg_ctx, env));
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
+ sandesha2_msg_ctx_free(fault_msg_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
}
fault_msg_ctx = sandesha2_fault_mgr_check_for_invalid_ack(env, rm_msg_ctx,
seq_prop_mgr);
@@ -241,6 +244,9 @@
axis2_engine_send_fault(engine, env, sandesha2_msg_ctx_get_msg_ctx(
fault_msg_ctx, env));
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
+ sandesha2_msg_ctx_free(fault_msg_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
}
if(int_seq_id)
sandesha2_seq_mgr_update_last_activated_time(env, int_seq_id,
Modified: webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/ack_req_msg_processor.c Wed
Jan 9 20:24:26 2008
@@ -282,6 +282,11 @@
"[sandesha2]ack sending failed");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_ACK,
AXIS2_FAILURE);
+ if(engine)
+ {
+ axis2_engine_free(engine, env);
+ engine = NULL;
+ }
if(dbname)
AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
@@ -290,6 +295,11 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
+ if(engine)
+ {
+ axis2_engine_free(engine, env);
+ engine = NULL;
+ }
}
else
{
@@ -338,6 +348,8 @@
found_list = sandesha2_sender_mgr_find_by_sender_bean(sender_mgr, env,
find_bean);
+ if(find_bean)
+ sandesha2_sender_bean_free(find_bean, env);
if(found_list)
{
int i = 0;
@@ -387,6 +399,8 @@
"[sandesha2]ack sending failed");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_ACK,
AXIS2_FAILURE);
+ if(engine)
+ axis2_engine_free(engine, env);
if(dbname)
AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
@@ -397,6 +411,8 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
+ if(engine)
+ axis2_engine_free(engine, env);
sandesha2_utils_start_sender_for_seq(env, conf_ctx, seq_id,
AXIS2_FALSE);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(sender_mgr)
Modified: webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c Wed Jan
9 20:24:26 2008
@@ -282,12 +282,20 @@
"[sandesha2]An error occured while sending the fault");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_FAULT,
AXIS2_FAILURE);
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
if(dbname)
AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(dbname)
AXIS2_FREE(env->allocator, dbname);
@@ -320,6 +328,10 @@
"[sandesha2]An error occured while sending the fault");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_FAULT,
AXIS2_FAILURE);
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -332,6 +344,10 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -361,6 +377,10 @@
"[sandesha2]An error occured while sending the fault");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_FAULT,
AXIS2_FAILURE);
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -373,6 +393,10 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
+ if(fault_ctx)
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -1336,7 +1360,6 @@
axis2_conf_ctx_t *conf_ctx = NULL;
sandesha2_ack_requested_t *ack_requested = NULL;
sandesha2_msg_ctx_t *ack_rm_msg = NULL;
- axis2_engine_t *engine = NULL;
axis2_msg_ctx_t *msg_ctx = NULL;
axis2_bool_t sent = AXIS2_FALSE;
@@ -1370,9 +1393,14 @@
seq_prop_mgr);
if(ack_rm_msg)
{
+ axis2_engine_t *engine = NULL;
engine = axis2_engine_create(env, conf_ctx);
msg_ctx = sandesha2_msg_ctx_get_msg_ctx(ack_rm_msg, env);
sent = axis2_engine_send(engine, env, msg_ctx);
+ if(ack_rm_msg)
+ sandesha2_msg_ctx_free(ack_rm_msg, env);
+ if(engine)
+ axis2_engine_free(engine, env);
}
if(!sent)
{
Modified:
webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/close_seq_msg_processor.c
Wed Jan 9 20:24:26 2008
@@ -180,7 +180,14 @@
{
engine = axis2_engine_create(env, conf_ctx);
axis2_engine_send(engine, env, sandesha2_msg_ctx_get_msg_ctx(
- fault_rm_msg_ctx, env));
+ fault_rm_msg_ctx, env));
+ if(fault_rm_msg_ctx)
+ sandesha2_msg_ctx_free(fault_rm_msg_ctx, env);
+ if(engine)
+ {
+ axis2_engine_free(engine, env);
+ engine = NULL;
+ }
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -230,6 +237,8 @@
engine = axis2_engine_create(env, conf_ctx);
axis2_engine_send(engine, env, close_seq_res_msg);
+ if(engine)
+ axis2_engine_free(engine, env);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
Modified:
webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/create_seq_msg_processor.c
Wed Jan 9 20:24:26 2008
@@ -196,7 +196,7 @@
AXIS2_FREE(env->allocator, dbname);
fault_rm_msg_ctx = sandesha2_fault_mgr_check_for_create_seq_refused(
- env, msg_ctx, seq_prop_mgr);
+ env, msg_ctx, seq_prop_mgr);
if(fault_rm_msg_ctx)
{
axis2_engine_t *engine = NULL;
@@ -205,6 +205,13 @@
engine = axis2_engine_create(env, conf_ctx);
axis2_engine_send_fault(engine, env, sandesha2_msg_ctx_get_msg_ctx(
fault_rm_msg_ctx, env));
+ if(fault_rm_msg_ctx)
+ sandesha2_msg_ctx_free(fault_rm_msg_ctx, env);
+ if(engine)
+ {
+ axis2_engine_free(engine, env);
+ engine = NULL;
+ }
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -341,6 +348,8 @@
sandesha2_seq_mgr_update_last_activated_time(env, new_seq_id,
seq_prop_mgr);
engine = axis2_engine_create(env, conf_ctx);
axis2_engine_send(engine, env, out_msg_ctx);
+ if(engine)
+ axis2_engine_free(engine, env);
to_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
new_seq_id, SANDESHA2_SEQ_PROP_TO_EPR);
if(!to_bean)
Modified:
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
---
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
(original)
+++
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
Wed Jan 9 20:24:26 2008
@@ -232,6 +232,9 @@
"[sandesha2] Send fault occurred");
axis2_engine_send_fault(engine, env, sandesha2_msg_ctx_get_msg_ctx(
fault_ctx, env));
+ sandesha2_msg_ctx_free(fault_ctx, env);
+ if(engine)
+ axis2_engine_free(engine, env);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -493,8 +496,7 @@
/* end test code */
engine = axis2_engine_create(env, axis2_msg_ctx_get_conf_ctx(msg_ctx,
env));
- axis2_engine_send(engine, env, out_msg_ctx);
-
+ axis2_engine_send(engine, env, out_msg_ctx);
op_ctx = axis2_msg_ctx_get_op_ctx(out_msg_ctx, env);
if(to_epr)
{
@@ -512,6 +514,8 @@
{
axis2_op_ctx_set_response_written(op_ctx, env, AXIS2_TRUE);
}
+ if(engine)
+ axis2_engine_free(engine, env);
AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, "[sandesha2]Exit:sandesha2_"\
"terminate_seq_msg_processor_add_terminate_seq_res");
return AXIS2_SUCCESS;
Modified: webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/sandesha2_utils.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/sandesha2_utils.c (original)
+++ webservices/sandesha/trunk/c/src/util/sandesha2_utils.c Wed Jan 9 20:24:26
2008
@@ -1172,6 +1172,8 @@
{
status = axis2_engine_send(engine, env, msg_ctx);
}
+ if(engine)
+ axis2_engine_free(engine, env);
return status;
}
Modified: webservices/sandesha/trunk/c/src/util/terminate_mgr.c
URL:
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/terminate_mgr.c?rev=610667&r1=610666&r2=610667&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/terminate_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/terminate_mgr.c Wed Jan 9 20:24:26
2008
@@ -762,12 +762,18 @@
if(axis2_msg_ctx_get_server_side(msg_ctx, env) &&
sandesha2_utils_is_single_channel(env, rm_ver, to_addr))
{
- axis2_msg_ctx_t *msg_ctx1 =
sandesha2_msg_ctx_get_msg_ctx(terminate_rm_msg, env);
- axis2_op_ctx_set_response_written(axis2_msg_ctx_get_op_ctx(msg_ctx1,
env), env, AXIS2_TRUE);
+ axis2_msg_ctx_t *msg_ctx2 =
sandesha2_msg_ctx_get_msg_ctx(terminate_rm_msg, env);
+ axis2_bool_t is_svr_side = axis2_msg_ctx_get_server_side(msg_ctx2,
env);
+ axis2_op_ctx_set_response_written(axis2_msg_ctx_get_op_ctx(msg_ctx2,
env), env, AXIS2_TRUE);
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
axis2_op_ctx_set_response_written(axis2_msg_ctx_get_op_ctx(msg_ctx,
env), env, AXIS2_TRUE);
engine = axis2_engine_create(env, conf_ctx);
- axis2_engine_send(engine, env, msg_ctx1);
+ axis2_engine_send(engine, env, msg_ctx2);
+ if(engine)
+ {
+ axis2_engine_free(engine, env);
+ engine = NULL;
+ }
/* Clean sending side data */
{
sandesha2_terminate_seq_t *terminate_seq = NULL;
@@ -783,8 +789,8 @@
internal_seq_id = sandesha2_utils_get_seq_property(env, seq_id,
SANDESHA2_SEQ_PROP_INTERNAL_SEQ_ID, seq_prop_mgr);
sandesha2_terminate_mgr_terminate_sending_side(env, conf_ctx,
- internal_seq_id, axis2_msg_ctx_get_server_side(msg_ctx1, env),
- storage_mgr, seq_prop_mgr, create_seq_mgr, sender_mgr);
+ internal_seq_id, is_svr_side, storage_mgr, seq_prop_mgr,
+ create_seq_mgr, sender_mgr);
terminate_added = sandesha2_seq_property_bean_create(env);
sandesha2_seq_property_bean_set_name(terminate_added, env,
SANDESHA2_SEQ_PROP_TERMINATE_ADDED);
@@ -871,6 +877,8 @@
}
engine = axis2_engine_create(env, conf_ctx);
status = axis2_engine_send(engine, env, msg_ctx1);
+ if(engine)
+ axis2_engine_free(engine, env);
AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI,
"[sandesha2]Exit:sandesha2_terminate_mgr_add_terminate_seq_msg");
return status;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]