diff options
author | Mikhail Voytenko <mav@openoffice.org> | 2010-04-08 13:04:51 +0200 |
---|---|---|
committer | Mikhail Voytenko <mav@openoffice.org> | 2010-04-08 13:04:51 +0200 |
commit | b5fd1e6d56b4be0202ab5abcc8e46a84244b6421 (patch) | |
tree | 170119326f4413271c12ae4cb1610a03d7755b9a /package | |
parent | 7ade3d638b7562889777bffb2ae20687ed6e2715 (diff) |
fwk138: #i104759# open the OpOfXML documents in repair mode always
Diffstat (limited to 'package')
-rw-r--r-- | package/source/zippackage/ZipPackage.cxx | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/package/source/zippackage/ZipPackage.cxx b/package/source/zippackage/ZipPackage.cxx index b8005eabd..35ea946b2 100644 --- a/package/source/zippackage/ZipPackage.cxx +++ b/package/source/zippackage/ZipPackage.cxx @@ -508,7 +508,14 @@ void ZipPackage::getZipFileContents() nIndex = nOldIndex = 0; pCurrent = m_pRootFolder; const ZipEntry & rEntry = *pEnum->nextElement(); - const OUString & rName = rEntry.sPath; + OUString rName = rEntry.sPath; + + if ( m_bForceRecovery ) + { + // the PKZIP Application note version 6.2 does not allows to use '\' as separator + // unfortunately it is used by some implementations, so we have to support it in recovery mode + rName.replace( '\\', '/' ); + } nStreamIndex = rName.lastIndexOf ( '/' ); if ( nStreamIndex != -1 ) |