From: so.yu Date: Mon, 22 Jul 2013 11:47:30 +0000 (+0900) Subject: modify ipcbuffer to remove memory leak X-Git-Tag: 2.2_release~1 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b3b66a5dccc038967c21ae41892988f0da415403;p=framework%2Fosp%2Fsecurity-service.git modify ipcbuffer to remove memory leak Change-Id: Ibd5dfbd9d618d6d3b6b9f07ec98e55bb9d69dd5f Signed-off-by: so.yu --- diff --git a/inc/CertificateServiceStub.h b/inc/CertificateServiceStub.h index a246363..5d9d964 100755 --- a/inc/CertificateServiceStub.h +++ b/inc/CertificateServiceStub.h @@ -67,7 +67,7 @@ public: bool OnGetCertificateCount(int type, int* pCertCount, result* pRet); - bool OnGetNextCertificate(int type, int curPos, int length, Tizen::Io::_IpcBuffer* pCertBufferIpc, int* pNewPos, result* pRet); + bool OnGetNextCertificate(int type, int curPos, int length, Tizen::Base::ByteBuffer* pCertBufferIpc, int* pNewPos, result* pRet); bool OnUpdateRootCa(int type, Tizen::Io::_IpcBuffer certOldBufferIpc, Tizen::Io::_IpcBuffer certNewBufferIpc, result* pRet); diff --git a/src/CertificateServiceStub.cpp b/src/CertificateServiceStub.cpp old mode 100644 new mode 100755 index c5a1f3c..a9017ec --- a/src/CertificateServiceStub.cpp +++ b/src/CertificateServiceStub.cpp @@ -385,7 +385,7 @@ CATCH: } bool -_CertServiceStub::OnGetNextCertificate(int type, int curPos, int length, Tizen::Io::_IpcBuffer* pCertBufferIpc, int* pNewPos, result* pRet) +_CertServiceStub::OnGetNextCertificate(int type, int curPos, int length, Tizen::Base::ByteBuffer* pCertBufferIpc, int* pNewPos, result* pRet) { char* pBuffer = null; @@ -403,14 +403,15 @@ _CertServiceStub::OnGetNextCertificate(int type, int curPos, int length, Tizen:: CATCH: if (!IsFailed(*pRet)) { - pCertBufferIpc->size = length; - pCertBufferIpc->pBuffer = pBuffer; + pCertBufferIpc->Construct(length); + pCertBufferIpc->SetArray(reinterpret_cast(pBuffer), 0, length); + pCertBufferIpc->Flip(); } else { - pCertBufferIpc->size = 0; - pCertBufferIpc->pBuffer = null; + SysLog(NID_SEC_CERT, "GetNextCertificate failed"); } + delete pBuffer; return true; }