Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Invalid
-
1.4 Final
-
None
-
All platforms
Description
The pointer returned to the SOAPFault object is never deallocated in the generated code in case of a fault. The pointer is returned by Call::checkFault() method and memory is allocated by SoapDeSerializer::checkForFault()
Attachments
Issue Links
- is depended upon by
-
AXISCPP-339 Fix trivial memory leaks revealed by profiler tools
- Closed
Resolving this issue is a bit complex given that we pass the pointer to the SOAP fault object to the client exception constructor. Either we have to make the exception constructor do a deep copy of the fault object and delete the fault object before we throw the exception. Or alternatively we could pass the required values to the exception and delete the fault object before we throw the exception object.
It is not a good idea to delete the SOAP fault from within the Exception destructor as of now, because we have a shallow copy of the SOAP fault inside the exception class.