include/vcl/ppdparser.hxx | 3 ++- sc/source/filter/html/htmlpars.cxx | 12 ++++-------- vcl/unx/generic/printer/ppdparser.cxx | 7 +++---- 3 files changed, 9 insertions(+), 13 deletions(-)
New commits: commit 79fa84ccb9b45b149843ac88e4d662f2a09e94bf Author: Caolán McNamara <caol...@redhat.com> Date: Fri Mar 14 15:46:05 2014 +0000 coverity#705828 Dereference before null check Change-Id: Ie76ee86f6ae48012c92a3f06ad1372f126f1ea29 diff --git a/sc/source/filter/html/htmlpars.cxx b/sc/source/filter/html/htmlpars.cxx index e8f69e9..0260292 100644 --- a/sc/source/filter/html/htmlpars.cxx +++ b/sc/source/filter/html/htmlpars.cxx @@ -266,10 +266,8 @@ ScHTMLLayoutParser::~ScHTMLLayoutParser() delete pS->pLocalColOffset; delete pS; } - if ( pLocalColOffset ) - delete pLocalColOffset; - if ( pColOffset ) - delete pColOffset; + delete pLocalColOffset; + delete pColOffset; if ( pTables ) { for( OuterMap::const_iterator it = pTables->begin(); it != pTables->end(); ++it) @@ -1349,8 +1347,7 @@ void ScHTMLLayoutParser::TableOff( ImportInfo* pInfo ) nColOffsetStart = pS->nColOffsetStart; bFirstRow = pS->bFirstRow; xLockedList = pS->xLockedList; - if ( pLocalColOffset ) - delete pLocalColOffset; + delete pLocalColOffset; pLocalColOffset = pS->pLocalColOffset; delete pActEntry; // pActEntry is kept around if a table is started in the same row @@ -1370,8 +1367,7 @@ void ScHTMLLayoutParser::TableOff( ImportInfo* pInfo ) { ScHTMLTableStackEntry* pS = aTableStack.top(); aTableStack.pop(); - if ( pLocalColOffset ) - delete pLocalColOffset; + delete pLocalColOffset; pLocalColOffset = pS->pLocalColOffset; delete pS; } commit ab419e3df3f51991cc35b60144e57233bf7ac678 Author: Caolán McNamara <caol...@redhat.com> Date: Fri Mar 14 15:41:27 2014 +0000 Resolves: coverity#1078567 help coverity out so it know that its the same rPPDCache in use to avoid various warnings Change-Id: I89cb7830f375f1907b2457bd05fd2df5d36c3696 diff --git a/include/vcl/ppdparser.hxx b/include/vcl/ppdparser.hxx index 344b35c..a4df86d 100644 --- a/include/vcl/ppdparser.hxx +++ b/include/vcl/ppdparser.hxx @@ -34,6 +34,7 @@ namespace psp { +class PPDCache; class PPDParser; class PPDTranslator; @@ -185,7 +186,7 @@ private: OUString handleTranslation(const OString& i_rString, bool i_bIsGlobalized); static void scanPPDDir( const OUString& rDir ); - static void initPPDFiles(); + static void initPPDFiles(PPDCache &rPPDCache); static OUString getPPDFile( const OUString& rFile ); public: static const PPDParser* getParser( const OUString& rFile ); diff --git a/vcl/unx/generic/printer/ppdparser.cxx b/vcl/unx/generic/printer/ppdparser.cxx index cbfe171..121fa8f 100644 --- a/vcl/unx/generic/printer/ppdparser.cxx +++ b/vcl/unx/generic/printer/ppdparser.cxx @@ -455,9 +455,8 @@ void PPDParser::scanPPDDir( const OUString& rDir ) } } -void PPDParser::initPPDFiles() +void PPDParser::initPPDFiles(PPDCache &rPPDCache) { - PPDCache &rPPDCache = thePPDCache::get(); if( rPPDCache.pAllPPDFiles ) return; @@ -499,7 +498,7 @@ void PPDParser::getKnownPPDDrivers( std::list< OUString >& o_rDrivers, bool bRef rPPDCache.pAllPPDFiles = NULL; } - initPPDFiles(); + initPPDFiles(rPPDCache); o_rDrivers.clear(); boost::unordered_map< OUString, OUString, OUStringHash >::const_iterator it; @@ -520,7 +519,7 @@ OUString PPDParser::getPPDFile( const OUString& rFile ) bool bRetry = true; do { - initPPDFiles(); + initPPDFiles(rPPDCache); // some PPD files contain dots beside the extension, so try name first // and cut of points after that OUString aBase( rFile );
_______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits