axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
Subject [jira] Commented: (AXISCPP-149) Memory cleaning of generated C++ array code
Date Fri, 03 Sep 2004 09:44:51 GMT
The following comment has been added to this issue:

     Author: Samisa Abeysinghe
    Created: Fri, 3 Sep 2004 2:43 AM
This is much tougher than I thought.

I made the WSDL2Ws tool generate a class for Array in place of struct, and also made it work
with the UDDI inquire client.

However this made the samples break. Specially it breaks the server side. Having a detailed
look I found that the deserializer uses AxisArray, which is a struct to create array structs
and assign that to the array atruct to be returend by casting (mind you they arer structs
and hence no inheritance) In C++ programing I am not sure how appropriate this is. Hence the
solution would be to change serializer/deserializer to make AxisArray a class and inherit
all the array types from that. But this breaks the C services support.

Hence I think we would have to differ this until the engine is redesigned.
View this comment:

View the issue:

Here is an overview of the issue:
        Key: AXISCPP-149
    Summary: Memory cleaning of generated C++ array code
       Type: Improvement

     Status: Open
   Priority: Major

    Project: Axis-C++
             WSDL processing
   Fix Fors:
             1.3 Beta
             current (nightly)

   Assignee: Samisa Abeysinghe
   Reporter: Samisa Abeysinghe

    Created: Thu, 2 Sep 2004 8:02 PM
    Updated: Fri, 3 Sep 2004 2:43 AM
Environment: All Platforms

In case of Arrays, I noticed that the WSDL2WS tool is generating a 

typedef struct SOAPStruct_ArrayTag
        SOAPStruct* m_Array;
        int m_Size;
} SOAPStruct_Array;

The trouble here is that in case of returned values/parameters the user 
has to delete the m_Array mamber explicitly.

I think a more cleaner way would be to use a class here and use a 
destructor to clean memory.

This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:

If you want more information on JIRA, or have a bug to report see:

View raw message