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 | 426a2f22678f89706b4db474243ab27b4a4d6c06 (patch) | |
tree | 8eee22c3c67da22a8c3f63ef4bcbd7a77fb5c60b /package | |
parent | f59e563680dddc7388284e8ebe1408a95e7f453b (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 a92ed254200a..36b4f8885f48 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 ) |