axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Samisa Abeysinghe (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (AXIS2C-670) Freeing nodes at axis2_svc_client_remove_all_headers cause double free
Date Wed, 15 Aug 2007 08:51:33 GMT

     [ https://issues.apache.org/jira/browse/AXIS2C-670?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Samisa Abeysinghe resolved AXIS2C-670.
--------------------------------------

       Resolution: Fixed
    Fix Version/s: 1.1.0
         Assignee: Damitha Kumarage

Fixed now. Damitha has made the changes.

> Freeing nodes at axis2_svc_client_remove_all_headers cause double free
> ----------------------------------------------------------------------
>
>                 Key: AXIS2C-670
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-670
>             Project: Axis2-C
>          Issue Type: Bug
>            Reporter: Damitha Kumarage
>            Assignee: Damitha Kumarage
>             Fix For: 1.1.0
>
>
> I reuse service client and before each reuse I need to remove all headers to avoid repeated
entry of http headers.
> When doing this I get the following valgrind report
> ==4463== Invalid read of size 4
> ==4463==    at 0x402C7AA: axiom_node_detach (om_node.c:214)
> ==4463==    by 0x402C492: axiom_node_free_tree (om_node.c:100)
> ==4463==    by 0x402C4AD: axiom_node_free_tree (om_node.c:103)
> ==4463==    by 0x403F825: axiom_soap_envelope_free (soap_envelope.c:167)
> ==4463==    by 0x806F20A: axis2_msg_ctx_free (msg_ctx.c:327)
> ==4463==    by 0x8070FEF: axis2_op_ctx_free (op_ctx.c:145)
> ==4463==    by 0x42076A3: axis2_op_client_free (op_client.c:582)
> ==4463==    by 0x420A50C: axis2_svc_client_create_op_client (svc_client.c:900)
> ==4463==    by 0x4209FF4: axis2_svc_client_send_receive_with_op_qname (svc_client.c:732)
> ==4463==    by 0x420A225: axis2_svc_client_send_receive (svc_client.c:804)
> ==4463==    by 0x44E449D: savan_util_get_subscriber_list_from_remote_subs_mgr (savan_util.c:854)
> ==4463==    by 0x45FC503: process_presence (monitor.c:547)
> ==4463==  Address 0x579920C is 12 bytes inside a block of size 40 free'd
> ==4463==    at 0x401CFA5: free (vg_replace_malloc.c:233)
> ==4463==    by 0x418DFF8: axutil_allocator_free_impl (allocator.c:77)
> ==4463==    by 0x402C598: axiom_node_free_tree (om_node.c:141)
> ==4463==    by 0x4209818: axis2_svc_client_remove_all_headers (svc_client.c:486)
> ==4463==    by 0x45FC08E: wsfes_monitor_presence (monitor.c:442)
> ==4463==    by 0x45FCF53: wsfes_monitor_invoke (monitor_skel.c:170)
> ==4463==    by 0x41EDF28: axis2_raw_xml_in_out_msg_recv_invoke_business_logic_sync (raw_xml_in_out_msg_recv.c:209)
> ==4463==    by 0x41ED80E: axis2_msg_recv_invoke_business_logic (msg_recv.c:375)
> ==4463==    by 0x41ED616: axis2_msg_recv_receive_impl (msg_recv.c:307)
> ==4463==    by 0x41ED86A: axis2_msg_recv_receive (msg_recv.c:410)
> ==4463==    by 0x41E12DD: axis2_engine_receive (engine.c:288)
> ==4463==    by 0x41BD73F: axis2_http_transport_utils_process_http_post_request (http_transport_utils.c:489)
> So I commented as in the following to solve the problem
>     for (i = 0; i < size; i++)
>     {
>         /*axiom_node_t *node = NULL;
>         node = axutil_array_list_get(svc_client->headers, env, i);
>         if (node)
>         {
>             axiom_node_free_tree(node, env);
>             node = NULL;
>         }*/
>         axutil_array_list_remove(svc_client->headers, env, i);
>     }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-dev-help@ws.apache.org


Mime
View raw message