You are viewing a plain text version of this content. The canonical link for it is here.
Posted to savan-dev@ws.apache.org by da...@apache.org on 2008/10/14 09:29:58 UTC

svn commit: r704356 - in /webservices/savan/trunk/c/src/util: db_mgr.c savan_util.c

Author: damitha
Date: Tue Oct 14 00:29:57 2008
New Revision: 704356

URL: http://svn.apache.org/viewvc?rev=704356&view=rev
Log:
Fixed AXIS2C-1274

Modified:
    webservices/savan/trunk/c/src/util/db_mgr.c
    webservices/savan/trunk/c/src/util/savan_util.c

Modified: webservices/savan/trunk/c/src/util/db_mgr.c
URL: http://svn.apache.org/viewvc/webservices/savan/trunk/c/src/util/db_mgr.c?rev=704356&r1=704355&r2=704356&view=diff
==============================================================================
--- webservices/savan/trunk/c/src/util/db_mgr.c (original)
+++ webservices/savan/trunk/c/src/util/db_mgr.c Tue Oct 14 00:29:57 2008
@@ -272,7 +272,7 @@
     const axis2_char_t *dbname,
     savan_subscriber_t *subscriber)
 {
-    axis2_char_t *sql_insert = NULL;
+    axis2_char_t sql_insert[1028];
     sqlite3 *dbconn = NULL;
     axis2_char_t *id = NULL;
     axis2_char_t *endto = NULL;
@@ -287,19 +287,20 @@
     axis2_endpoint_ref_t *notifyto_epr = NULL;
     int counter = 1;
     struct sqlite3_stmt* insertqry;
-    sql_insert = AXIS2_MALLOC(env->allocator, 1028);
+
     sprintf(sql_insert, "%s", "insert into subscriber(id");
-            AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "sql_insert:%s", sql_insert);
+    
+    AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "sql_insert:%s", sql_insert);
 
     if(subscriber)
     {
         int i = 0;
+
         id = savan_subscriber_get_id(subscriber, env);
         endto_epr = savan_subscriber_get_end_to(subscriber, env);
         if(endto_epr)
         {
-            endto = (axis2_char_t *) axis2_endpoint_ref_get_address(endto_epr, 
-                env);
+            endto = (axis2_char_t *) axis2_endpoint_ref_get_address(endto_epr, env);
             if(endto)
             {
                 sprintf(sql_insert, "%s%s", sql_insert, ",end_to");
@@ -307,11 +308,11 @@
                 AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "sql_insert:%s", sql_insert);
             }
         }
+
         notifyto_epr = savan_subscriber_get_notify_to(subscriber, env);
         if(notifyto_epr)
         {
-            notifyto = (axis2_char_t *) axis2_endpoint_ref_get_address(
-                notifyto_epr, env);
+            notifyto = (axis2_char_t *) axis2_endpoint_ref_get_address(notifyto_epr, env);
             if(notifyto)
             {
                 sprintf(sql_insert, "%s%s", sql_insert, ",notify_to");   
@@ -319,6 +320,7 @@
                 AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "sql_insert:%s", sql_insert);
             }
         }
+
         delivery_mode = savan_subscriber_get_delivery_mode(subscriber, env);
         if(delivery_mode)
         {
@@ -435,7 +437,6 @@
             "[SAVAN] Sql Insert Error: %s", sqlite3_errmsg(dbconn));
     }
    
-    AXIS2_FREE(env->allocator, sql_insert);
     sqlite3_finalize(insertqry);
     sqlite3_close(dbconn);
     return AXIS2_SUCCESS;

Modified: webservices/savan/trunk/c/src/util/savan_util.c
URL: http://svn.apache.org/viewvc/webservices/savan/trunk/c/src/util/savan_util.c?rev=704356&r1=704355&r2=704356&view=diff
==============================================================================
--- webservices/savan/trunk/c/src/util/savan_util.c (original)
+++ webservices/savan/trunk/c/src/util/savan_util.c Tue Oct 14 00:29:57 2008
@@ -217,11 +217,10 @@
         savan_util_set_filter_template_for_subscriber(subscriber, env);
 	#endif
 
-    xslt_template_filter = 
-		(xsltStylesheetPtr)savan_subscriber_get_filter_template(subscriber,
+    xslt_template_filter = (xsltStylesheetPtr)savan_subscriber_get_filter_template(subscriber,
         env);
-    xmlDocPtr result_doc = (xmlDocPtr)xsltApplyStylesheet(xslt_template_filter,
-        payload_doc, NULL);
+
+    xmlDocPtr result_doc = (xmlDocPtr)xsltApplyStylesheet(xslt_template_filter, payload_doc, NULL);
 
     if(result_doc)
     {
@@ -231,29 +230,36 @@
     if(buffer)
     {
         reader = axiom_xml_reader_create_for_memory(env, 
-		    (char*)buffer,axutil_strlen((char*)buffer), 
-		    NULL, AXIS2_XML_PARSER_TYPE_BUFFER);
+                (char*)buffer,axutil_strlen((char*)buffer), NULL, AXIS2_XML_PARSER_TYPE_BUFFER);
     }
+
     if(reader)
     {
         om_builder = axiom_stax_builder_create(env, reader);
     }
+
     if(om_builder)
     {
         document = axiom_stax_builder_get_document(om_builder, env);
     }
+
     if(document)
     {
         node = axiom_document_build_all(document, env);
     }
 
     if(om_builder)
+    {
         axiom_stax_builder_free_self(om_builder, env);
-    free(payload_string);
+    }
+
+    /*free(payload_string);*/ /* In apache freeing this give seg fault:damitha */
     if(result_doc)
+    {
 	    xmlFreeDoc(result_doc);
+    }
 
-	if(node == NULL)
+	if(!node)
 	{
 		return AXIS2_FAILURE;
 	}