You are viewing a plain text version of this content. The canonical link for it is here.
Posted to sandesha-dev@ws.apache.org by da...@apache.org on 2008/01/02 19:44:50 UTC
svn commit: r608179 - in /webservices/sandesha/trunk/c: config/ include/
samples/rm_ping_1_0/ src/client/ src/core/ src/msgprocessors/ src/polling/
src/storage/beans/ src/storage/sqlite/ src/transport/ src/util/ src/workers/
Author: damitha
Date: Wed Jan 2 10:44:47 2008
New Revision: 608179
URL: http://svn.apache.org/viewvc?rev=608179&view=rev
Log:
Fixing memory leaks
Modified:
webservices/sandesha/trunk/c/config/module.xml
webservices/sandesha/trunk/c/include/sandesha2_seq_property_bean.h
webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c
webservices/sandesha/trunk/c/src/client/client.c
webservices/sandesha/trunk/c/src/core/msg_validator.c
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/create_seq_res_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_msg_processor.c
webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c
webservices/sandesha/trunk/c/src/polling/polling_mgr.c
webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c
webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c
webservices/sandesha/trunk/c/src/transport/sandesha2_transport_sender.c
webservices/sandesha/trunk/c/src/util/ack_mgr.c
webservices/sandesha/trunk/c/src/util/msg_creator.c
webservices/sandesha/trunk/c/src/util/msg_init.c
webservices/sandesha/trunk/c/src/util/sandesha2_utils.c
webservices/sandesha/trunk/c/src/util/terminate_mgr.c
webservices/sandesha/trunk/c/src/workers/in_order_invoker.c
webservices/sandesha/trunk/c/src/workers/sender.c
webservices/sandesha/trunk/c/src/workers/sender_worker.c
Modified: webservices/sandesha/trunk/c/config/module.xml
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/config/module.xml?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/config/module.xml (original)
+++ webservices/sandesha/trunk/c/config/module.xml Wed Jan 2 10:44:47 2008
@@ -70,7 +70,7 @@
</operation>
<!-- Database connection parameters -->
- <!--parameter name="sandesha2_db" locked="false">/tmp/sandesha2_db</parameter-->
+ <parameter name="sandesha2_db" locked="false">/tmp/sandesha2_db</parameter>
<parameter name="db_server" locked="false">localhost</parameter>
<parameter name="db_user" locked="false">g</parameter>
<parameter name="db_password" locked="false">g</parameter>
Modified: webservices/sandesha/trunk/c/include/sandesha2_seq_property_bean.h
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/include/sandesha2_seq_property_bean.h?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/include/sandesha2_seq_property_bean.h (original)
+++ webservices/sandesha/trunk/c/include/sandesha2_seq_property_bean.h Wed Jan 2 10:44:47 2008
@@ -19,7 +19,6 @@
#include <axutil_utils_defines.h>
#include <axutil_env.h>
-#include <sandesha2_rm_bean.h>
#ifdef __cplusplus
extern "C"
@@ -27,12 +26,6 @@
#endif
typedef struct sandesha2_seq_property_bean sandesha2_seq_property_bean_t ;
-struct sandesha2_transaction;
-
-AXIS2_DECLARE_DATA struct sandesha2_seq_property_bean
-{
- sandesha2_rm_bean_t rm_bean;
-};
/* constructors
*/
@@ -49,19 +42,8 @@
void AXIS2_CALL
sandesha2_seq_property_bean_free (
- sandesha2_rm_bean_t *seq_property,
- const axutil_env_t *env);
-
-struct sandesha2_rm_bean * AXIS2_CALL
-sandesha2_seq_property_bean_get_base(
- sandesha2_rm_bean_t* seq_property,
- const axutil_env_t *env);
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_base (
sandesha2_seq_property_bean_t *seq_property,
- const axutil_env_t *env,
- struct sandesha2_rm_bean* rm_bean);
+ const axutil_env_t *env);
axis2_char_t *AXIS2_CALL
sandesha2_seq_property_bean_get_name (
@@ -95,28 +77,6 @@
sandesha2_seq_property_bean_t *seq_property,
const axutil_env_t *env,
axis2_char_t *value);
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_id(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env,
- long id);
-
-long AXIS2_CALL
-sandesha2_seq_property_bean_get_id(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env);
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_transaction(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env,
- struct sandesha2_transaction *transaction);
-
-struct sandesha2_transaction *AXIS2_CALL
-sandesha2_seq_property_bean_get_transaction(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env);
#ifdef __cplusplus
}
Modified: webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c (original)
+++ webservices/sandesha/trunk/c/samples/rm_ping_1_0/rm_ping_1_0.c Wed Jan 2 10:44:47 2008
@@ -166,7 +166,7 @@
if (svc_client)
{
- /*axis2_svc_client_free(svc_client, env);*/
+ axis2_svc_client_free(svc_client, env);
svc_client = NULL;
}
return 0;
Modified: webservices/sandesha/trunk/c/src/client/client.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/client/client.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/client/client.c (original)
+++ webservices/sandesha/trunk/c/src/client/client.c Wed Jan 2 10:44:47 2008
@@ -248,6 +248,8 @@
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
ctx = axis2_conf_ctx_get_base(conf_ctx, env);
sandesha2_seq_report_set_internal_seq_id(seq_report, env, internal_seq_id);
create_seq_find_bean = sandesha2_create_seq_bean_create(env);
@@ -414,6 +416,8 @@
{
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
}
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
sandesha2_report = sandesha2_report_create(env);
internal_seq_find_bean = sandesha2_seq_property_bean_create(env);
ctx = axis2_conf_ctx_get_base(conf_ctx, env);
@@ -1006,6 +1010,8 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
seq_id_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
internal_seq_id, SANDESHA2_SEQ_PROP_OUT_SEQ_ID);
if(!seq_id_bean)
@@ -1258,6 +1264,8 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
seq_id_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
internal_seq_id, SANDESHA2_SEQ_PROP_OUT_SEQ_ID);
if(!seq_id_bean)
@@ -1585,6 +1593,8 @@
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
ctx = axis2_conf_ctx_get_base(conf_ctx, env);
seq_report = sandesha2_seq_report_create(env);
completed_msg_list = sandesha2_ack_mgr_get_svr_completed_msgs_list(env,
@@ -1694,6 +1704,8 @@
{
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
}
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
seq_id_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
internal_seq_id, SANDESHA2_SEQ_PROP_OUT_SEQ_ID);
@@ -1967,6 +1979,8 @@
conf = axis2_conf_ctx_get_conf(conf_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
ctx = axis2_conf_ctx_get_base(conf_ctx, env);
response_envelope = sandesha2_storage_mgr_retrieve_response(storage_mgr, env,
client_seq_key, msg_no);
Modified: webservices/sandesha/trunk/c/src/core/msg_validator.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/core/msg_validator.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/core/msg_validator.c (original)
+++ webservices/sandesha/trunk/c/src/core/msg_validator.c Wed Jan 2 10:44:47 2008
@@ -53,15 +53,21 @@
rm_ns_msg = sandesha2_msg_ctx_get_rm_ns_val(rm_msg_ctx, env);
addr_ns_msg = sandesha2_msg_ctx_get_addr_ns_val(rm_msg_ctx, env);
- if(NULL != rm_ver_seq)
+ if(rm_ver_seq)
+ {
rm_ns_seq = sandesha2_spec_specific_consts_get_rm_ns_val(env,
rm_ver_seq);
+ if(rm_ver_seq)
+ AXIS2_FREE(env->allocator, rm_ver_seq);
+ }
if(NULL != rm_ns_seq && 0 != axutil_strcmp(rm_ns_seq, rm_ns_msg))
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Validation"
" failed. The RM namespace of the message does not"
" match with the sequence");
+ if(addr_ns_seq)
+ AXIS2_FREE(env->allocator, addr_ns_seq);
return AXIS2_FAILURE;
}
if(NULL != addr_ns_seq && 0 != axutil_strcmp(addr_ns_seq, addr_ns_msg))
@@ -69,8 +75,12 @@
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Validation"
" failed. The Addressing namespace of the message does"
" not match with the sequence");
+ if(addr_ns_seq)
+ AXIS2_FREE(env->allocator, addr_ns_seq);
return AXIS2_FAILURE;
}
+ if(addr_ns_seq)
+ AXIS2_FREE(env->allocator, addr_ns_seq);
}
}
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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -196,6 +196,8 @@
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env,dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
ack_range_list = sandesha2_seq_ack_get_ack_range_list(seq_ack, env);
nack_list = sandesha2_seq_ack_get_nack_list(seq_ack, env);
@@ -257,6 +259,8 @@
if(!acked_list)
{
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
+ if(int_seq_id)
+ AXIS2_FREE(env->allocator, int_seq_id);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -361,6 +365,8 @@
{
long highest_out_msg_no = 0;
highest_out_msg_no = atol(last_out_msg_no_str);
+ if(last_out_msg_no_str)
+ AXIS2_FREE(env->allocator, last_out_msg_no_str);
AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "highest_out_msg_no:%ld", highest_out_msg_no);
if(highest_out_msg_no > 0)
{
@@ -377,6 +383,8 @@
}
}
}
+ if(int_seq_id)
+ AXIS2_FREE(env->allocator, int_seq_id);
action = axis2_msg_ctx_get_wsa_action(msg_ctx, env);
if(action && 0 == axutil_strcmp(action,
sandesha2_spec_specific_consts_get_ack_req_action(env,
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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -158,7 +158,6 @@
sandesha2_msg_ctx_t *ack_rm_msg = NULL;
axiom_soap_envelope_t *envelope = NULL;
axis2_char_t *wsa_version = NULL;
- axis2_char_t *addr_ns_val = NULL;
axis2_char_t *dbname = NULL;
AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI,
@@ -193,6 +192,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]acks_to_str"\
" seqeunce property is not set correctly");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(storage_mgr)
@@ -249,8 +250,6 @@
property = NULL;
}
- addr_ns_val = sandesha2_utils_get_seq_property(env, seq_id,
- SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, seq_prop_mgr);
if(sandesha2_utils_is_anon_uri(env, acks_to_str))
{
axis2_engine_t *engine = NULL;
@@ -283,6 +282,8 @@
"[sandesha2]ack sending failed");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_ACK,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(storage_mgr)
@@ -387,6 +388,8 @@
"[sandesha2]ack sending failed");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_ACK,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(sender_mgr)
@@ -400,6 +403,8 @@
if(sender_mgr)
sandesha2_sender_mgr_free(sender_mgr, env);
}
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(storage_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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -284,11 +284,15 @@
"[sandesha2]An error occured while sending the fault");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SENDING_FAULT,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_SUCCESS;
@@ -297,6 +301,8 @@
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
invoker_mgr = sandesha2_permanent_invoker_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
seq = (sandesha2_seq_t*)sandesha2_msg_ctx_get_msg_part(rm_msg_ctx, env,
SANDESHA2_MSG_PART_SEQ);
sandesha2_seq_set_must_understand(seq, env, AXIS2_FALSE);
@@ -495,6 +501,10 @@
highest_msg_id_bean);
}
}
+ if(highest_in_msg_no_str)
+ AXIS2_FREE(env->allocator, highest_in_msg_no_str);
+ if(highest_in_msg_key_str)
+ AXIS2_FREE(env->allocator, highest_in_msg_key_str);
if(msgs_bean)
{
msgs_str = sandesha2_seq_property_bean_get_value(msgs_bean, env);
@@ -702,6 +712,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]acks_to_str"
" seqeunce property is not set correctly");
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -739,6 +751,8 @@
sandesha2_app_msg_processor_send_ack_if_reqd(env, rm_msg_ctx, msgs_str,
seq_prop_mgr);
}
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
@@ -812,12 +826,16 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]seq_prop_mgr is NULL");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
is_svr_side = axis2_msg_ctx_get_server_side(msg_ctx, env);
to_epr = axis2_msg_ctx_get_to(msg_ctx, env);
@@ -903,6 +921,8 @@
{
last_msg = AXIS2_TRUE;
}
+ if(last_req_id)
+ AXIS2_FREE(env->allocator, last_req_id);
}
else
{
@@ -945,6 +965,8 @@
{
last_msg = AXIS2_TRUE;
}
+ if(spec_ver)
+ AXIS2_FREE(env->allocator, spec_ver);
}
}
property = axis2_msg_ctx_get_property(msg_ctx, env,
@@ -1153,6 +1175,8 @@
addr_ns_uri = sandesha2_utils_get_seq_property(env, internal_seq_id,
SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, seq_prop_mgr);
anon_uri = sandesha2_spec_specific_consts_get_anon_uri(env, addr_ns_uri);
+ if(addr_ns_uri)
+ AXIS2_FREE(env->allocator, addr_ns_uri);
if(!res_create_seq_added)
{
axis2_char_t *acks_to = NULL;
@@ -1437,6 +1461,8 @@
addr_ns_uri = sandesha2_utils_get_seq_property(env, internal_seq_id,
SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, seq_prop_mgr);
anon_uri = sandesha2_spec_specific_consts_get_anon_uri(env, addr_ns_uri);
+ if(addr_ns_uri)
+ AXIS2_FREE(env->allocator, addr_ns_uri);
if(!axis2_msg_ctx_get_reply_to(create_seq_msg, env))
{
axis2_endpoint_ref_t *cs_epr = NULL;
@@ -1579,13 +1605,9 @@
rm_version = sandesha2_utils_get_rm_version(env, internal_seq_id, seq_prop_mgr);
if(!rm_version)
{
- rm_version = sandesha2_utils_get_rm_version(env, internal_seq_id, seq_prop_mgr);
- if(!rm_version)
- {
- AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]Unable to find "\
- "RM spec version for the internal_seq_id %s", internal_seq_id);
- return AXIS2_FAILURE;
- }
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2]Unable to find "\
+ "RM spec version for the internal_seq_id %s", internal_seq_id);
+ return AXIS2_FAILURE;
}
rm_ns_val = sandesha2_spec_specific_consts_get_rm_ns_val(env, rm_version);
@@ -1606,6 +1628,8 @@
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]Sequence not found");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_NULL_SEQ, AXIS2_FAILURE);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
return AXIS2_FAILURE;
}
if(sandesha2_seq_get_last_msg(req_seq, env))
@@ -1681,6 +1705,8 @@
"[sandesha2]Sequence is NULL");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_SEQ_NOT_EXIST,
AXIS2_FAILURE);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
return AXIS2_FAILURE;
}
incoming_seq_id = sandesha2_identifier_get_identifier(
@@ -1689,6 +1715,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]Sequence ID is NULL");
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
return AXIS2_FAILURE;
}
sandesha2_msg_creator_add_ack_msg(env, rm_msg_ctx, incoming_seq_id,
@@ -1697,6 +1725,8 @@
env));
return axis2_engine_resume_send(engine, env, msg_ctx);
}
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
sandesha2_sender_bean_set_msg_ctx_ref_key(app_msg_entry, env,
storage_key);
millisecs = sandesha2_utils_get_current_time_in_millis(env);
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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -166,6 +166,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
close_seq = (sandesha2_close_seq_t*)sandesha2_msg_ctx_get_msg_part(
rm_msg_ctx, env, SANDESHA2_MSG_PART_CLOSE_SEQ);
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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -192,6 +192,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
fault_rm_msg_ctx = sandesha2_fault_mgr_check_for_create_seq_refused(
env, msg_ctx, seq_prop_mgr);
@@ -218,7 +220,16 @@
create_seq_res_msg = sandesha2_msg_creator_create_create_seq_res_msg(env,
rm_msg_ctx, out_msg_ctx, new_seq_id, seq_prop_mgr);
axis2_msg_ctx_set_flow(out_msg_ctx, env, AXIS2_OUT_FLOW);
-
+ if(!create_seq_res_msg)
+ {
+ if(seq_prop_mgr)
+ sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
+ if(create_seq_mgr)
+ sandesha2_create_seq_mgr_free(create_seq_mgr, env);
+ if(next_msg_mgr)
+ sandesha2_next_msg_mgr_free(next_msg_mgr, env);
+ return AXIS2_FAILURE;
+ }
property = axutil_property_create_with_args(env, 0, 0, 0,
AXIS2_VALUE_TRUE);
/* For making sure that this won't be processed again */
@@ -349,6 +360,8 @@
SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE,
seq_prop_mgr);
anon_uri = sandesha2_spec_specific_consts_get_anon_uri(env, addr_ns_uri);
+ if(addr_ns_uri)
+ AXIS2_FREE(env->allocator, addr_ns_uri);
op_ctx = axis2_msg_ctx_get_op_ctx(msg_ctx, env);
if(sandesha2_utils_is_anon_uri(env, axis2_endpoint_ref_get_address(to_epr,
Modified: webservices/sandesha/trunk/c/src/msgprocessors/create_seq_res_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/create_seq_res_msg_processor.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/create_seq_res_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/create_seq_res_msg_processor.c Wed Jan 2 10:44:47 2008
@@ -211,6 +211,8 @@
"[sandesha2]Create Sequence Response part is null");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_REQD_MSG_PART_MISSING,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
@@ -224,6 +226,8 @@
"[sandesha2]New sequence id is null");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CANNOT_FIND_SEQ_ID,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
@@ -235,6 +239,8 @@
" sequence message. relates_to part is not available");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_INVALID_RELATES_TO,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
@@ -249,6 +255,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]Create Sequence entry not found");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -267,6 +275,8 @@
"[sandesha2]Internal sequence id is not set");
AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_CANNOT_FIND_SEQ_ID,
AXIS2_FAILURE);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -286,6 +296,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]Create sequence entry not found");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -336,6 +348,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]No offered sequence entry. But an accept was received");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -378,6 +392,8 @@
if(reply_to_addr)
{
polling_mode = sandesha2_utils_is_anon_uri(env, reply_to_addr);
+ if(reply_to_addr)
+ AXIS2_FREE(env->allocator, reply_to_addr);
}
}
{
@@ -406,6 +422,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]to_seq_bean is NULL");
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -457,6 +475,8 @@
if(next_msg_mgr)
sandesha2_next_msg_mgr_free(next_msg_mgr, env);
}
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
target_bean = sandesha2_sender_bean_create(env);
sandesha2_sender_bean_set_internal_seq_id(target_bean, env, internal_seq_id);
sandesha2_sender_bean_set_send(target_bean, env, AXIS2_FALSE);
@@ -470,7 +490,7 @@
sandesha2_sender_bean_t *tmp_bean = NULL;
axis2_char_t *key = NULL;
axis2_msg_ctx_t *app_msg_ctx = NULL;
- axis2_char_t *rm_ver = NULL;
+ axis2_char_t *rm_version = NULL;
axis2_char_t *assumed_rm_ns = NULL;
sandesha2_msg_ctx_t *app_rm_msg = NULL;
sandesha2_seq_t *seq_part = NULL;
@@ -495,11 +515,11 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_FAILURE;
}
- rm_ver = sandesha2_utils_get_rm_version(env, internal_seq_id, seq_prop_mgr);
- if(!rm_ver)
+ rm_version = sandesha2_utils_get_rm_version(env, internal_seq_id, seq_prop_mgr);
+ if(!rm_version)
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
- "[sandesha2]Cannot find the rm_ver of the given message");
+ "[sandesha2]Cannot find the rm_version of the given message");
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -511,7 +531,9 @@
return AXIS2_FAILURE;
}
assumed_rm_ns = sandesha2_spec_specific_consts_get_rm_ns_val(env,
- rm_ver);
+ rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
app_rm_msg = sandesha2_msg_init_init_msg(env, app_msg_ctx);
seq_part = (sandesha2_seq_t*)sandesha2_msg_ctx_get_msg_part(
app_rm_msg, env, SANDESHA2_MSG_PART_SEQ);
Modified: webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/make_connection_msg_processor.c Wed Jan 2 10:44:47 2008
@@ -221,6 +221,8 @@
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
}
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
int_seq_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
seq_id, SANDESHA2_SEQ_PROP_INTERNAL_SEQ_ID);
if(int_seq_bean)
@@ -501,6 +503,8 @@
sandesha2_terminate_mgr_terminate_sending_side(env, conf_ctx,
int_seq_id, axis2_msg_ctx_get_server_side(msg_ctx, env),
storage_mgr, seq_prop_mgr, create_seq_mgr, sender_mgr);
+ if(int_seq_id)
+ AXIS2_FREE(env->allocator, int_seq_id);
}
axis2_msg_ctx_set_paused(msg_ctx, env, AXIS2_TRUE);
if(seq_prop_mgr)
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=608179&r1=608178&r2=608179&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 2 10:44:47 2008
@@ -220,6 +220,8 @@
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
fault_ctx = sandesha2_fault_mgr_check_for_unknown_seq(env,
rm_msg_ctx, seq_id, seq_prop_mgr, create_seq_mgr, next_msg_mgr);
if(fault_ctx)
@@ -324,9 +326,13 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] "
"highest in msg id has not been stored");
+ if(highest_in_msg_num_str)
+ AXIS2_FREE(env->allocator, highest_in_msg_num_str);
return AXIS2_FAILURE;
}
highest_in_msg_num = atol(highest_in_msg_num_str);
+ if(highest_in_msg_num_str)
+ AXIS2_FREE(env->allocator, highest_in_msg_num_str);
}
rec_side_int_seq_id = sandesha2_utils_get_outgoing_internal_seq_id(env,
seq_id);
@@ -338,7 +344,6 @@
{
/* Mark up the highest inbound message as if it had the last message
* flag on it.*/
- axis2_char_t *in_msg_id = highest_in_msg_id;
sandesha2_seq_property_bean_t *last_in_msg_bean = NULL;
axis2_char_t *highest_out_relates_to = NULL;
last_in_msg_bean = sandesha2_seq_property_bean_create_with_data(env,
@@ -354,7 +359,7 @@
rec_side_int_seq_id, SANDESHA2_SEQ_PROP_HIGHEST_OUT_RELATES_TO,
seq_prop_mgr);
if(highest_out_relates_to && 0 == axutil_strcmp(highest_out_relates_to,
- in_msg_id))
+ highest_in_msg_id))
{
axis2_char_t *highest_out_msg_num_str = NULL;
highest_out_msg_num_str = sandesha2_utils_get_seq_property(env,
@@ -362,8 +367,14 @@
seq_prop_mgr);
highest_out_msg_num = atol(highest_out_msg_num_str);
add_rec_side_term = AXIS2_TRUE;
+ if(highest_out_msg_num_str)
+ AXIS2_FREE(env->allocator, highest_out_msg_num_str);
}
- }
+ if(highest_out_relates_to)
+ AXIS2_FREE(env->allocator, highest_out_relates_to);
+ }
+ if(highest_in_msg_id)
+ AXIS2_FREE(env->allocator, highest_in_msg_id);
AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2]add_rec_side_term:%d",
add_rec_side_term);
out_seq_id = sandesha2_utils_get_seq_property(env, rec_side_int_seq_id,
@@ -405,7 +416,6 @@
sandesha2_seq_ack_t *seq_ack = NULL;
axutil_property_t *property = NULL;
axis2_engine_t *engine = NULL;
- axis2_char_t *addr_ns_uri = NULL;
axis2_op_ctx_t *op_ctx = NULL;
axis2_endpoint_ref_t *to_epr = NULL;
/*axis2_transport_out_desc_t *orig_trans_out = NULL;
@@ -485,8 +495,6 @@
engine = axis2_engine_create(env, axis2_msg_ctx_get_conf_ctx(msg_ctx, env));
axis2_engine_send(engine, env, out_msg_ctx);
- addr_ns_uri = sandesha2_utils_get_seq_property(env, seq_id,
- SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, seq_prop_mgr);
op_ctx = axis2_msg_ctx_get_op_ctx(out_msg_ctx, env);
if(to_epr)
{
@@ -555,6 +563,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
to_address = (axis2_char_t*)axis2_endpoint_ref_get_address(
axis2_msg_ctx_get_to(msg_ctx, env), env);
property = axis2_msg_ctx_get_property(msg_ctx, env, SANDESHA2_CLIENT_SEQ_KEY);
@@ -601,6 +611,10 @@
{
AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI,
"[sandesha2]Terminate was added previously");
+ if(terminated)
+ AXIS2_FREE(env->allocator, terminated);
+ if(out_seq_id)
+ AXIS2_FREE(env->allocator, out_seq_id);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -611,6 +625,8 @@
sandesha2_storage_mgr_free(storage_mgr, env);
return AXIS2_SUCCESS;
}
+ if(terminated)
+ AXIS2_FREE(env->allocator, terminated);
term_seq_part = (sandesha2_terminate_seq_t*)sandesha2_msg_ctx_get_msg_part(
rm_msg_ctx, env, SANDESHA2_MSG_PART_TERMINATE_SEQ);
sandesha2_identifier_set_identifier(sandesha2_terminate_seq_get_identifier(
@@ -625,6 +641,8 @@
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI,
"[sandesha2]Cant find the rm_version of the given message");
+ if(out_seq_id)
+ AXIS2_FREE(env->allocator, out_seq_id);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
@@ -640,6 +658,8 @@
env, rm_version));
temp_action = sandesha2_spec_specific_consts_get_terminate_seq_soap_action
(env, rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
soap_action = axutil_string_create(env, temp_action);
axis2_msg_ctx_set_soap_action(msg_ctx, env, soap_action);
transport_to = sandesha2_utils_get_seq_property(env, int_seq_id,
@@ -648,6 +668,7 @@
if(transport_to)
{
axis2_msg_ctx_set_transport_url(msg_ctx, env, transport_to);
+ AXIS2_FREE(env->allocator, transport_to);
}
sandesha2_msg_ctx_add_soap_envelope(rm_msg_ctx, env);
@@ -677,6 +698,8 @@
sandesha2_seq_property_bean_set_name(term_added, env,
SANDESHA2_SEQ_PROP_TERMINATE_ADDED);
sandesha2_seq_property_bean_set_seq_id(term_added, env, out_seq_id);
+ if(out_seq_id)
+ AXIS2_FREE(env->allocator, out_seq_id);
sandesha2_seq_property_bean_set_value(term_added, env, AXIS2_VALUE_TRUE);
sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, term_added);
sandesha2_terminate_mgr_terminate_sending_side(env, conf_ctx, int_seq_id,
Modified: webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c (original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/terminate_seq_res_msg_processor.c Wed Jan 2 10:44:47 2008
@@ -165,6 +165,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr =sandesha2_permanent_sender_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
/* We need to pass here internal seq id isn't it?:damitha
int internal_seq_id = sandesha2_utils_get_seq_property(env, seq_id,
SANDESHA2_SEQ_PROP_INTERNAL_SEQ_ID, storage_mgr);*/
Modified: webservices/sandesha/trunk/c/src/polling/polling_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/polling/polling_mgr.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/polling/polling_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/polling/polling_mgr.c Wed Jan 2 10:44:47 2008
@@ -174,6 +174,8 @@
}
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
sandesha2_polling_mgr_set_poll(polling_mgr, env, AXIS2_TRUE);
sandesha2_polling_mgr_schedule_polling_request(polling_mgr, env,
internal_seq_id);
@@ -234,6 +236,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
while(polling_mgr->poll)
{
@@ -346,6 +350,8 @@
make_conn_rm_msg_ctx =
sandesha2_msg_creator_create_make_connection_msg(env,
ref_rm_msg_ctx, make_conn_seq_id, wsrm_anon_reply_to_uri, seq_prop_mgr);
+ if(reply_to)
+ AXIS2_FREE(env->allocator, reply_to);
if(!make_conn_rm_msg_ctx)
{
AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "No memory");
Modified: webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c (original)
+++ webservices/sandesha/trunk/c/src/storage/beans/seq_property_bean.c Wed Jan 2 10:44:47 2008
@@ -16,65 +16,39 @@
#include <sandesha2_seq_property_bean.h>
#include <sandesha2_transaction.h>
-#include <sandesha2_rm_bean.h>
#include <string.h>
#include <axutil_string.h>
#include <axutil_utils.h>
/*seq_property_bean struct */
-typedef struct sandesha2_seq_property_bean_impl
+struct sandesha2_seq_property_bean
{
- sandesha2_seq_property_bean_t seq_property_bean;
- sandesha2_rm_bean_t *rm_bean_impl;
axis2_char_t *seq_id;
axis2_char_t *name;
axis2_char_t *value;
-} sandesha2_seq_property_bean_impl_t;
-
-#define SANDESHA2_INTF_TO_IMPL(seq_property_bean) \
- ((sandesha2_seq_property_bean_impl_t *) seq_property_bean)
-
-axis2_char_t* AXIS2_CALL
-sandesha2_inmemory_seq_property_mgr_get_key(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env);
-
-static const sandesha2_rm_bean_ops_t rm_bean_ops =
-{
- sandesha2_seq_property_bean_free,
- sandesha2_seq_property_bean_get_base,
- sandesha2_seq_property_bean_set_id,
- sandesha2_seq_property_bean_get_id,
- sandesha2_seq_property_bean_set_transaction,
- sandesha2_seq_property_bean_get_transaction,
- sandesha2_inmemory_seq_property_mgr_get_key
};
AXIS2_EXTERN sandesha2_seq_property_bean_t* AXIS2_CALL
sandesha2_seq_property_bean_create(
const axutil_env_t *env)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- AXIS2_ENV_CHECK(env, NULL);
-
- seq_property_bean_impl = (sandesha2_seq_property_bean_impl_t *)AXIS2_MALLOC(
- env->allocator, sizeof(sandesha2_seq_property_bean_impl_t));
+ sandesha2_seq_property_bean_t *seq_property_bean = NULL;
+ seq_property_bean = (sandesha2_seq_property_bean_t *)AXIS2_MALLOC(
+ env->allocator, sizeof(sandesha2_seq_property_bean_t));
- if(!seq_property_bean_impl)
+ if(!seq_property_bean)
{
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
/* initialize properties */
- seq_property_bean_impl->seq_id = NULL;
- seq_property_bean_impl->name = NULL;
- seq_property_bean_impl->value = NULL;
- seq_property_bean_impl->rm_bean_impl = sandesha2_rm_bean_create(env);
- seq_property_bean_impl->seq_property_bean.rm_bean.ops = rm_bean_ops;
+ seq_property_bean->seq_id = NULL;
+ seq_property_bean->name = NULL;
+ seq_property_bean->value = NULL;
- return &(seq_property_bean_impl->seq_property_bean);
+ return seq_property_bean;
}
AXIS2_EXTERN sandesha2_seq_property_bean_t* AXIS2_CALL
@@ -85,82 +59,49 @@
axis2_char_t *value)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- AXIS2_ENV_CHECK(env, NULL);
+ sandesha2_seq_property_bean_t *seq_property_bean = NULL;
+ seq_property_bean = (sandesha2_seq_property_bean_t *)AXIS2_MALLOC(
+ env->allocator, sizeof(sandesha2_seq_property_bean_t));
- seq_property_bean_impl = (sandesha2_seq_property_bean_impl_t *)AXIS2_MALLOC(
- env->allocator, sizeof(sandesha2_seq_property_bean_impl_t));
-
- if(!seq_property_bean_impl)
+ if(!seq_property_bean)
{
AXIS2_ERROR_SET(env->error, AXIS2_ERROR_NO_MEMORY, AXIS2_FAILURE);
return NULL;
}
/* initialize properties */
- seq_property_bean_impl->seq_id = (axis2_char_t *)axutil_strdup(env, seq_id);
- seq_property_bean_impl->name = (axis2_char_t *)axutil_strdup(env, prop_name);
- seq_property_bean_impl->value = (axis2_char_t *)axutil_strdup(env, value);
- seq_property_bean_impl->rm_bean_impl = sandesha2_rm_bean_create(env);
- seq_property_bean_impl->seq_property_bean.rm_bean.ops = rm_bean_ops;
+ seq_property_bean->seq_id = (axis2_char_t *)axutil_strdup(env, seq_id);
+ seq_property_bean->name = (axis2_char_t *)axutil_strdup(env, prop_name);
+ seq_property_bean->value = (axis2_char_t *)axutil_strdup(env, value);
- return &(seq_property_bean_impl->seq_property_bean);
+ return seq_property_bean;
}
void AXIS2_CALL
sandesha2_seq_property_bean_free (
- sandesha2_rm_bean_t *seq_property_bean,
+ sandesha2_seq_property_bean_t *seq_property_bean,
const axutil_env_t *env)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
-/* if(seq_property_bean_impl->rm_bean_impl)
+ if(seq_property_bean->seq_id)
{
- sandesha2_rm_bean_free(seq_property_bean_impl->rm_bean_impl, env);
- seq_property_bean_impl->rm_bean_impl= NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->seq_id);
+ seq_property_bean->seq_id = NULL;
}
- if(seq_property_bean_impl->seq_id)
+ if(seq_property_bean->name)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->seq_id);
- seq_property_bean_impl->seq_id = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->name);
+ seq_property_bean->name = NULL;
}
- if(seq_property_bean_impl->name)
+ if(seq_property_bean->value)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->name);
- seq_property_bean_impl->name = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->value);
+ seq_property_bean->value = NULL;
}
- if(seq_property_bean_impl->value)
+ if(seq_property_bean)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->value);
- seq_property_bean_impl->value = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean);
+ seq_property_bean = NULL;
}
- if(seq_property_bean_impl)
- {
- AXIS2_FREE(env->allocator, seq_property_bean_impl);
- seq_property_bean_impl = NULL;
- }
- */
-}
-
-sandesha2_rm_bean_t * AXIS2_CALL
-sandesha2_seq_property_bean_get_base(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return seq_property_bean_impl->rm_bean_impl;
-}
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_base (
- sandesha2_seq_property_bean_t *seq_property_bean,
- const axutil_env_t *env,
- sandesha2_rm_bean_t* rm_bean)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- seq_property_bean_impl->rm_bean_impl = rm_bean;
}
axis2_char_t *AXIS2_CALL
@@ -168,9 +109,7 @@
sandesha2_seq_property_bean_t *seq_property_bean,
const axutil_env_t *env)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return seq_property_bean_impl->name;
+ return seq_property_bean->name;
}
void AXIS2_CALL
@@ -179,15 +118,13 @@
const axutil_env_t *env,
axis2_char_t *name)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- if(seq_property_bean_impl->name)
+ if(seq_property_bean->name)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->name);
- seq_property_bean_impl->name = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->name);
+ seq_property_bean->name = NULL;
}
if(name)
- seq_property_bean_impl->name = (axis2_char_t *)axutil_strdup(env, name);
+ seq_property_bean->name = (axis2_char_t *)axutil_strdup(env, name);
}
axis2_char_t *AXIS2_CALL
@@ -195,9 +132,7 @@
sandesha2_seq_property_bean_t *seq_property_bean,
const axutil_env_t *env)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return seq_property_bean_impl->seq_id;
+ return seq_property_bean->seq_id;
}
@@ -207,15 +142,13 @@
const axutil_env_t *env,
axis2_char_t *seq_id)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- if(seq_property_bean_impl->seq_id)
+ if(seq_property_bean->seq_id)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->seq_id);
- seq_property_bean_impl->seq_id = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->seq_id);
+ seq_property_bean->seq_id = NULL;
}
if(seq_id)
- seq_property_bean_impl->seq_id = (axis2_char_t *)axutil_strdup(env, seq_id);
+ seq_property_bean->seq_id = (axis2_char_t *)axutil_strdup(env, seq_id);
}
axis2_char_t* AXIS2_CALL
@@ -223,9 +156,7 @@
sandesha2_seq_property_bean_t *seq_property_bean,
const axutil_env_t *env)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return seq_property_bean_impl->value;
+ return seq_property_bean->value;
}
@@ -235,77 +166,13 @@
const axutil_env_t *env,
axis2_char_t *value)
{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- if(seq_property_bean_impl->value)
+ if(seq_property_bean->value)
{
- AXIS2_FREE(env->allocator, seq_property_bean_impl->value);
- seq_property_bean_impl->value = NULL;
+ AXIS2_FREE(env->allocator, seq_property_bean->value);
+ seq_property_bean->value = NULL;
}
if(value)
- seq_property_bean_impl->value = (axis2_char_t *)axutil_strdup(env, value);
-
-}
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_id(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env,
- long id)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- sandesha2_rm_bean_set_id(seq_property_bean_impl->rm_bean_impl, env, id);
-}
-
-long AXIS2_CALL
-sandesha2_seq_property_bean_get_id(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return sandesha2_rm_bean_get_id(seq_property_bean_impl->rm_bean_impl, env);
-}
-
-void AXIS2_CALL
-sandesha2_seq_property_bean_set_transaction(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env,
- sandesha2_transaction_t *transaction)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- sandesha2_rm_bean_set_transaction(seq_property_bean_impl->rm_bean_impl, env,
- transaction);
-}
-
-sandesha2_transaction_t *AXIS2_CALL
-sandesha2_seq_property_bean_get_transaction(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env)
-{
- sandesha2_seq_property_bean_impl_t *seq_property_bean_impl = NULL;
- seq_property_bean_impl = SANDESHA2_INTF_TO_IMPL(seq_property_bean);
- return sandesha2_rm_bean_get_transaction(seq_property_bean_impl->rm_bean_impl,
- env);
-}
-
-axis2_char_t* AXIS2_CALL
-sandesha2_inmemory_seq_property_mgr_get_key(
- sandesha2_rm_bean_t *seq_property_bean,
- const axutil_env_t *env)
-{
- axis2_char_t *seq_id = NULL;
- axis2_char_t *name = NULL;
- axis2_char_t *id = NULL;
-
- seq_id = sandesha2_seq_property_bean_get_seq_id(
- (sandesha2_seq_property_bean_t *) seq_property_bean, env);
- name = sandesha2_seq_property_bean_get_name(
- (sandesha2_seq_property_bean_t *) seq_property_bean, env);
- id = axutil_strcat(env, seq_id, ":", name, NULL);
+ seq_property_bean->value = (axis2_char_t *)axutil_strdup(env, value);
- return id;
}
Modified: webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/storage/sqlite/permanent_storage_mgr.c Wed Jan 2 10:44:47 2008
@@ -1012,6 +1012,8 @@
system(permission_str);
}
#endif
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
sql_stmt1 = "create table create_seq("\
"create_seq_msg_id varchar(100) primary key, "\
"internal_seq_id varchar(200), seq_id varchar(200), "\
Modified: webservices/sandesha/trunk/c/src/transport/sandesha2_transport_sender.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/transport/sandesha2_transport_sender.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/transport/sandesha2_transport_sender.c (original)
+++ webservices/sandesha/trunk/c/src/transport/sandesha2_transport_sender.c Wed Jan 2 10:44:47 2008
@@ -180,6 +180,8 @@
conf = axis2_conf_ctx_get_conf(conf_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
property = axutil_property_create_with_args(env, 0, 0, 0, AXIS2_VALUE_TRUE);
axis2_msg_ctx_set_property(msg_ctx, env, SANDESHA2_QUALIFIED_FOR_SENDING,
Modified: webservices/sandesha/trunk/c/src/util/ack_mgr.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/ack_mgr.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/ack_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/ack_mgr.c Wed Jan 2 10:44:47 2008
@@ -131,6 +131,8 @@
property = axutil_property_create_with_args(env, 0, 0, 0, addr_ns_uri);
axis2_msg_ctx_set_property(ack_msg_ctx, env, AXIS2_WSA_VERSION, property);
}
+ if(addr_ns_uri)
+ AXIS2_FREE(env->allocator, addr_ns_uri);
}
op_ctx = axis2_msg_ctx_get_op_ctx(ref_msg, env);
if(!op_ctx)
Modified: webservices/sandesha/trunk/c/src/util/msg_creator.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/msg_creator.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/msg_creator.c (original)
+++ webservices/sandesha/trunk/c/src/util/msg_creator.c Wed Jan 2 10:44:47 2008
@@ -274,6 +274,8 @@
temp_address = sandesha2_address_create(env, addressing_ns_value, acks_to_epr);
temp_acks_to = sandesha2_acks_to_create(env, temp_address, rm_ns_value,
addressing_ns_value);
+ if(addressing_ns_value)
+ AXIS2_FREE(env->allocator, addressing_ns_value);
sandesha2_create_seq_set_acks_to(create_seq_part, env, temp_acks_to);
sandesha2_msg_ctx_set_msg_part(create_seq_rm_msg, env,
SANDESHA2_MSG_PART_CREATE_SEQ, (sandesha2_iom_rm_part_t *)
@@ -281,6 +283,8 @@
sandesha2_msg_ctx_add_soap_envelope(create_seq_rm_msg, env);
temp_action = sandesha2_spec_specific_consts_get_create_seq_action(env,
rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
sandesha2_msg_ctx_set_wsa_action(create_seq_rm_msg, env, temp_action);
/*temp_soap_action = sandesha2_spec_specific_consts_get_create_seq_action(env,
rm_version);*/
@@ -387,6 +391,8 @@
sandesha2_iom_rm_element_t *) response, env, temp_om_node);
temp_action = sandesha2_spec_specific_consts_get_create_seq_res_action(
env, rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
axis2_msg_ctx_set_wsa_action(out_msg, env, temp_action);
/*temp_action =
sandesha2_spec_specific_consts_get_create_seq_res_action(env,
@@ -404,6 +410,8 @@
prop = axutil_property_create_with_args(env, 0, 0, 0, addressing_ns_value);
axis2_ctx_set_property(ctx, env, AXIS2_WSA_VERSION, prop);
}
+ if(addressing_ns_value)
+ AXIS2_FREE(env->allocator, addressing_ns_value);
new_msg_id = axutil_uuid_gen(env);
axis2_msg_ctx_set_message_id(out_msg, env, new_msg_id);
axis2_msg_ctx_set_soap_envelope(out_msg, env, envelope);
@@ -477,6 +485,8 @@
temp_action =
sandesha2_spec_specific_consts_get_close_seq_res_action(env,
rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
soap_action = axutil_string_create(env, temp_action);
axis2_msg_ctx_set_soap_action(out_msg, env, soap_action);
@@ -584,12 +594,15 @@
if(!rm_version)
{
AXIS2_ERROR_SET(env->error,
- SANDESHA2_ERROR_CANNOT_FIND_RM_VERSION_OF_GIVEN_MSG, AXIS2_FAILURE);
+ SANDESHA2_ERROR_CANNOT_FIND_RM_VERSION_OF_GIVEN_MSG, AXIS2_FAILURE);
return NULL;
}
rm_ns_value = sandesha2_spec_specific_consts_get_rm_ns_val(env, rm_version);
sandesha2_msg_creator_init_creation(env, ref_msg_ctx, terminate_seq_msg_ctx);
- is_seq_res_reqd = sandesha2_spec_specific_consts_is_term_seq_res_reqd(env, rm_version);
+ is_seq_res_reqd = sandesha2_spec_specific_consts_is_term_seq_res_reqd(env,
+ rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
if(!is_seq_res_reqd)
{
@@ -669,6 +682,8 @@
}
temp_action = sandesha2_spec_specific_consts_get_teminate_seq_res_action(
env, rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
axis2_msg_ctx_set_wsa_action(out_msg, env, temp_action);
soap_action = axutil_string_create(env, temp_action);
axis2_msg_ctx_set_soap_action(out_msg, env, soap_action);
@@ -941,13 +956,14 @@
soap_header = axiom_soap_envelope_get_header(envelope, env);
sandesha2_iom_rm_element_to_om_node((sandesha2_iom_rm_element_t *)seq_ack, env, soap_header);
- rm_version = sandesha2_utils_get_rm_version(env, seq_id, seq_prop_mgr);
ack_req_action = sandesha2_spec_specific_consts_get_seq_ack_action(env,
rm_version);
sandesha2_msg_ctx_set_wsa_action(app_msg, env, ack_req_action);
temp_action =
sandesha2_spec_specific_consts_get_seq_ack_soap_action(env,
rm_version);
+ if(rm_version)
+ AXIS2_FREE(env->allocator, rm_version);
ack_req_soap_action = axutil_string_create(env, temp_action);
sandesha2_msg_ctx_set_soap_action(app_msg, env, ack_req_soap_action);
uuid = axutil_uuid_gen(env);
Modified: webservices/sandesha/trunk/c/src/util/msg_init.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/msg_init.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/msg_init.c (original)
+++ webservices/sandesha/trunk/c/src/util/msg_init.c Wed Jan 2 10:44:47 2008
@@ -295,6 +295,8 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(temp_msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
create_seq = (sandesha2_create_seq_t *) sandesha2_msg_ctx_get_msg_part(
rm_msg_ctx, env, SANDESHA2_MSG_PART_CREATE_SEQ);
create_seq_res = (sandesha2_create_seq_res_t *)
@@ -445,12 +447,15 @@
axis2_char_t *spec_version = NULL;
axis2_char_t *seq_rm_ns = NULL;
- spec_version = sandesha2_utils_get_rm_version(env, prop_key, seq_prop_mgr);
+ spec_version = sandesha2_utils_get_rm_version(env, prop_key,
+ seq_prop_mgr);
if(spec_version)
{
seq_rm_ns = sandesha2_spec_specific_consts_get_rm_ns_val(env,
spec_version);
}
+ if(spec_version)
+ AXIS2_FREE(env->allocator, spec_version);
if(seq_rm_ns && rm_ns)
{
if(0 != axutil_strcmp(seq_rm_ns, rm_ns))
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=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/sandesha2_utils.c (original)
+++ webservices/sandesha/trunk/c/src/util/sandesha2_utils.c Wed Jan 2 10:44:47 2008
@@ -138,6 +138,7 @@
axis2_char_t *key,
sandesha2_seq_property_mgr_t *seq_prop_mgr)
{
+ axis2_char_t *value = NULL;
sandesha2_seq_property_bean_t *rm_version_bean = NULL;
AXIS2_PARAM_CHECK(env->error, key, NULL);
@@ -151,7 +152,9 @@
{
return NULL;
}
- return sandesha2_seq_property_bean_get_value(rm_version_bean, env);
+ value = axutil_strdup(env, sandesha2_seq_property_bean_get_value(rm_version_bean, env));
+ sandesha2_seq_property_bean_free(rm_version_bean, env);
+ return value;
}
AXIS2_EXTERN sandesha2_storage_mgr_t* AXIS2_CALL
@@ -177,6 +180,7 @@
axis2_char_t *name,
sandesha2_seq_property_mgr_t *seq_prop_mgr)
{
+ axis2_char_t *value = NULL;
sandesha2_seq_property_bean_t *seq_prop_bean = NULL;
AXIS2_PARAM_CHECK(env->error, incoming_seq_id, NULL);
@@ -187,7 +191,11 @@
env, incoming_seq_id, name);
if(!seq_prop_bean)
return NULL;
- return sandesha2_seq_property_bean_get_value(seq_prop_bean, env);
+
+ value = axutil_strdup(env, sandesha2_seq_property_bean_get_value(
+ seq_prop_bean, env));
+ sandesha2_seq_property_bean_free(seq_prop_bean, env);
+ return value;
}
AXIS2_EXTERN sandesha2_property_bean_t* AXIS2_CALL
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=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/terminate_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/terminate_mgr.c Wed Jan 2 10:44:47 2008
@@ -268,6 +268,8 @@
{
sandesha2_storage_mgr_remove_msg_ctx(storage_mgr, env,
highest_in_msg_key, conf_ctx);
+ if(highest_in_msg_key)
+ AXIS2_FREE(env->allocator, highest_in_msg_key);
}
sandesha2_terminate_mgr_remove_recv_side_properties(env, conf_ctx, seq_id,
storage_mgr, seq_prop_mgr);
@@ -532,13 +534,10 @@
if(!svr_side)
{
sandesha2_seq_property_bean_t *acks_to_bean = NULL;
- axis2_char_t *addr_ns_uri = NULL;
axis2_bool_t stop_listner_for_async = AXIS2_FALSE;
acks_to_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
seq_id, SANDESHA2_SEQ_PROP_ACKS_TO_EPR);
- addr_ns_uri = sandesha2_utils_get_seq_property(env, seq_id,
- SANDESHA2_SEQ_PROP_ADDRESSING_NAMESPACE_VALUE, seq_prop_mgr);
if(acks_to_bean)
{
axis2_char_t *acks_to = NULL;
@@ -608,6 +607,8 @@
find_seq_prop_bean = sandesha2_seq_property_bean_create(env);
sandesha2_seq_property_bean_set_seq_id(find_seq_prop_bean, env, internal_seq_id);
+ if(internal_seq_id)
+ AXIS2_FREE(env->allocator, internal_seq_id);
found_list = sandesha2_seq_property_mgr_find(seq_prop_mgr, env,
find_seq_prop_bean);
if(found_list)
@@ -646,6 +647,8 @@
}
}
}
+ if(out_seq_id)
+ AXIS2_FREE(env->allocator, out_seq_id);
AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI,
"[sandesha2]Exit:sandesha2_terminate_mgr_clean_sending_side_data");
return AXIS2_SUCCESS;
@@ -784,9 +787,15 @@
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);
+ if(internal_seq_id)
+ AXIS2_FREE(env->allocator, internal_seq_id);
}
+ if(rm_ver)
+ AXIS2_FREE(env->allocator, rm_ver);
return AXIS2_SUCCESS;
}
+ if(rm_ver)
+ AXIS2_FREE(env->allocator, rm_ver);
key = axutil_uuid_gen(env);
terminate_bean = sandesha2_sender_bean_create(env);
sandesha2_sender_bean_set_msg_ctx_ref_key(terminate_bean, env, key);
Modified: webservices/sandesha/trunk/c/src/workers/in_order_invoker.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/in_order_invoker.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/in_order_invoker.c (original)
+++ webservices/sandesha/trunk/c/src/workers/in_order_invoker.c Wed Jan 2 10:44:47 2008
@@ -262,6 +262,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
invoker_mgr = sandesha2_permanent_invoker_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
while(invoker->run_invoker)
{
sandesha2_seq_property_bean_t *all_seq_bean = NULL;
Modified: webservices/sandesha/trunk/c/src/workers/sender.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/sender.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/sender.c (original)
+++ webservices/sandesha/trunk/c/src/workers/sender.c Wed Jan 2 10:44:47 2008
@@ -137,6 +137,8 @@
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
+ if(dbname)
+ AXIS2_FREE(env->allocator, dbname);
qname = axutil_qname_create(env, SANDESHA2_MODULE, NULL, NULL);
module_desc = axis2_conf_get_module(conf, env, qname);
Modified: webservices/sandesha/trunk/c/src/workers/sender_worker.c
URL: http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/sender_worker.c?rev=608179&r1=608178&r2=608179&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/sender_worker.c (original)
+++ webservices/sandesha/trunk/c/src/workers/sender_worker.c Wed Jan 2 10:44:47 2008
@@ -382,6 +382,8 @@
sandesha2_terminate_mgr_terminate_sending_side(env, conf_ctx,
internal_seq_id, axis2_msg_ctx_get_server_side(msg_ctx, env),
storage_mgr, seq_prop_mgr, create_seq_mgr, sender_mgr);
+ if(internal_seq_id)
+ AXIS2_FREE(env->allocator, internal_seq_id);
/* We have no more messages for this sequence. So continue send
* status is false*/
status = AXIS2_FAILURE;
---------------------------------------------------------------------
To unsubscribe, e-mail: sandesha-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: sandesha-dev-help@ws.apache.org