[
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]