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