modify ipcbuffer to remove memory leak
authorso.yu <so.yu@samsung.com>
Mon, 22 Jul 2013 11:47:30 +0000 (20:47 +0900)
committerso.yu <so.yu@samsung.com>
Mon, 22 Jul 2013 11:47:36 +0000 (20:47 +0900)
Change-Id: Ibd5dfbd9d618d6d3b6b9f07ec98e55bb9d69dd5f
Signed-off-by: so.yu <so.yu@samsung.com>
inc/CertificateServiceStub.h
src/CertificateServiceStub.cpp [changed mode: 0644->0755]

index a246363..5d9d964 100755 (executable)
@@ -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);
 
old mode 100644 (file)
new mode 100755 (executable)
index c5a1f3c..a9017ec
@@ -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<const byte*>(pBuffer), 0, length);
+               pCertBufferIpc->Flip();
        }
        else
        {
-               pCertBufferIpc->size = 0;
-               pCertBufferIpc->pBuffer = null;
+               SysLog(NID_SEC_CERT, "GetNextCertificate failed");
        }
+       delete pBuffer;
 
        return true;
 }