You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2004/12/29 09:08:39 UTC
cvs commit: ws-axis/c/src/soap SoapDeSerializer.cpp SoapFault.cpp
samisa 2004/12/29 00:08:39
Modified: c/src/soap SoapDeSerializer.cpp SoapFault.cpp
Log:
Fix more memory leaks. Part of AXISCPP-339.
Revision Changes Path
1.121 +4 -1 ws-axis/c/src/soap/SoapDeSerializer.cpp
Index: SoapDeSerializer.cpp
===================================================================
RCS file: /home/cvs/ws-axis/c/src/soap/SoapDeSerializer.cpp,v
retrieving revision 1.120
retrieving revision 1.121
diff -u -r1.120 -r1.121
--- SoapDeSerializer.cpp 29 Dec 2004 06:36:48 -0000 1.120
+++ SoapDeSerializer.cpp 29 Dec 2004 08:08:39 -0000 1.121
@@ -483,11 +483,14 @@
if (pcDetail)
{
pFault->setFaultDetail (pcDetail);
+ delete [] pcDetail;
}
else
{
pcCmplxFaultName = getCmplxFaultObjectName ();
- pFault->setCmplxFaultObjectName (pcCmplxFaultName);
+ pFault->setCmplxFaultObjectName (pcCmplxFaultName == NULL ? "" : pcCmplxFaultName);
+ if ( pcCmplxFaultName )
+ delete [] pcCmplxFaultName;
}
setStyle (m_nStyle);
1.46 +4 -0 ws-axis/c/src/soap/SoapFault.cpp
Index: SoapFault.cpp
===================================================================
RCS file: /home/cvs/ws-axis/c/src/soap/SoapFault.cpp,v
retrieving revision 1.45
retrieving revision 1.46
diff -u -r1.45 -r1.46
--- SoapFault.cpp 17 Dec 2004 11:49:46 -0000 1.45
+++ SoapFault.cpp 29 Dec 2004 08:08:39 -0000 1.46
@@ -68,6 +68,10 @@
m_pFaultstringParam = NULL;
m_pFaultactorParam = NULL;
m_pFaultDetail = NULL;
+
+ // Samisa: may need to have a copy constructor to do deep copies of this member
+ // Asummung there is only once SoapFault object instance here
+ delete m_pCmplxFaultObject;
}
int SoapFault::serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion)