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

Bill Mitchell updated AXIS2C-830:
---------------------------------

    Attachment: libcurl_diff

In further testing, I discovered that the first fix I passed on inadvertently 
introduced a bug in the read path.  The free of the axis2_libcurl structure on 
each operation was what indirectly reset read back to the start of the buffer.  
Making the axis2_libcurl structure persist caused the read buffer to persist 
but never be reset to the start, so subsequent reads were appended after the 
contents of the first message read.  I have now fixed this problem.  

In fixing the read path, I discovered that the free of the axis2_libcurl 
structure in the original code contained a memory leak in that it never freed 
the read buffer, so a buffer was lost after each message received.  I have now 
fixed this pre-existing problem, as well as a leak of an array_list structure 
allocated as part of the axis2_libcurl structure.  

All these fixes are contained in the replacement diff file I have attached.  

> libcurl interface not multithreaded
> -----------------------------------
>
>                 Key: AXIS2C-830
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-830
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: transport/http
>    Affects Versions: 1.1.0
>         Environment: Windows XP, Visual Studio 2005, build uses libcurl and 
> guththila
>            Reporter: Bill Mitchell
>         Attachments: libcurl_diff
>
>
> Axis2C support of libcurl is not multithreaded, i.e., it cannot be invoked by 
> a multithreaded client application.  This despite the fact that libcurl is 
> multithreaded and Axis2C is multithreaded.  The crux of the issue lies in the 
> static global definition of the curl handler in axis2_libcurl.c.  This 
> prevents multiple client threads from obtaining multiple connections to issue 
> concurrent SOAP operations.  

-- 
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: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to