You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Loganathan Parthipan (JIRA)" <ax...@ws.apache.org> on 2005/10/01 09:59:48 UTC

[jira] Commented: (AXISCPP-343) SIGSEGV deserializing an array of complex elements

    [ http://issues.apache.org/jira/browse/AXISCPP-343?page=comments#action_12331018 ] 

Loganathan Parthipan commented on AXISCPP-343:
----------------------------------------------

Ok, so all this is for resizing an array. IMHO a vector should be used. Is there any reason why we shouldn't use a standard container? Low level code when written wrong is much worse than safely using a well tested STL container. And as seen in this case it's also a maintenence nightmare.



> SIGSEGV deserializing an array of complex elements
> --------------------------------------------------
>
>          Key: AXISCPP-343
>          URL: http://issues.apache.org/jira/browse/AXISCPP-343
>      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 crash.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira