diff options
author | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2012-08-27 16:33:13 +0200 |
---|---|---|
committer | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2012-08-27 16:33:13 +0200 |
commit | 40c85b88ad0351acaf59fd2372676cdb8ca452d6 (patch) | |
tree | 44948c7931cda7f4925b4b0a8ad68ffccef38a71 /shell/source/win32/ooofilereader/basereader.cxx | |
parent | d3300205918f87054c9dd399ac53ad1e979dcdc7 (diff) |
fdo#53592: Try not to crash on empty m_ZipContent
Change-Id: I9bdc9997e260a75682177c8641695b60df0c81a6
Diffstat (limited to 'shell/source/win32/ooofilereader/basereader.cxx')
-rw-r--r-- | shell/source/win32/ooofilereader/basereader.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/shell/source/win32/ooofilereader/basereader.cxx b/shell/source/win32/ooofilereader/basereader.cxx index f4f694e6c683..754d37e87e0b 100644 --- a/shell/source/win32/ooofilereader/basereader.cxx +++ b/shell/source/win32/ooofilereader/basereader.cxx @@ -81,9 +81,12 @@ void CBaseReader::Initialize( const std::string& ContentName) if (m_ZipContent.empty()) m_ZipFile.GetUncompressedContent( ContentName, m_ZipContent ); - xml_parser parser; - parser.set_document_handler(this); // pass current reader as reader to the sax parser - parser.parse(&m_ZipContent[0], m_ZipContent.size()); + if (!m_ZipContent.empty()) + { + xml_parser parser; + parser.set_document_handler(this); // pass current reader as reader to the sax parser + parser.parse(&m_ZipContent[0], m_ZipContent.size()); + } } catch(std::exception& #if OSL_DEBUG_LEVEL > 0 |