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