From 86fd9622fb8066e1b3a41971cdf7ad76539d313c Mon Sep 17 00:00:00 2001 From: Mike Kaganski Date: Sat, 20 Oct 2018 22:58:47 +0200 Subject: tdf#120703 (PVS): handle failed realloc V701 realloc() possible leak: when realloc() fails in allocating memory, original pointer 'm_pBuffer' is lost. Consider assigning realloc() to a temporary pointer. Change-Id: I8a18e1472072456bfe9f32d822f185cabd24d6ed Reviewed-on: https://gerrit.libreoffice.org/62114 Reviewed-by: Mike Kaganski Tested-by: Mike Kaganski --- ucb/source/ucp/ftp/ftpurl.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'ucb/source/ucp') diff --git a/ucb/source/ucp/ftp/ftpurl.cxx b/ucb/source/ucp/ftp/ftpurl.cxx index 38e4afe3345a..01c2eb292860 100644 --- a/ucb/source/ucp/ftp/ftpurl.cxx +++ b/ucb/source/ucp/ftp/ftpurl.cxx @@ -88,7 +88,10 @@ int MemoryContainer::append( m_nLen+=1024; } while(m_nLen < tmp); - m_pBuffer = std::realloc(m_pBuffer,m_nLen); + if (auto p = std::realloc(m_pBuffer, m_nLen)) + m_pBuffer = p; + else + return 0; } memcpy(static_cast(m_pBuffer)+m_nWritePos, -- cgit