axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dushshantha Chandradasa (JIRA)" <>
Subject [jira] Commented: (AXISCPP-343) SIGSEGV deserializing an array of complex elements
Date Tue, 20 Sep 2005 04:32:27 GMT
    [ ] 

Dushshantha Chandradasa commented on AXISCPP-343:

from the Mailing list:

Dushshantha Chandradasa wrote:

>Hi All,
>Could somebody please explain why do we use a virtual destructor in 
>complex type auto generated classes for RPC style?
In my understanding, it is not a problem to use the virtual destructors. 
But the problem is that we use both memset, followed by delete[] on the same object.
I think we got to do only one of those and see if there are memory leaks.
using delete[] without memset and checking for leaks would reveal whether delete[] alone would
take care of memory cleaning.


> SIGSEGV deserializing an array of complex elements
> --------------------------------------------------
>          Key: AXISCPP-343
>          URL:
>      Project: Axis-C++
>         Type: Bug
>   Components: Serialization
>     Versions: 1.4 Final
>  Environment: RH9
>     Reporter: Unai Uribarri
>     Assignee: Dushshantha Chandradasa
>  Attachments: siaam.wsdl
> The function Axis_Create_* (in the following example, the mapItem
> object) in the stubs generated by wsdl2ws java tool generates a SIGSEGV
> when tring to enlarge an array of objects
>         mapItem* pNew = new mapItem[nSize];
>         memcpy(pNew, pObj, sizeof(mapItem)*nSize/2);
>         memset(pObj, 0, sizeof(mapItem)*nSize/2);
>         --> delete [] pObj; <-- SIGSEGV
> memset clears the virtual table pointer of the mapItem objects and the delete operator

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:

View raw message