diff options
Diffstat (limited to 'sc/source/filter/excel/excel.cxx')
-rw-r--r-- | sc/source/filter/excel/excel.cxx | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sc/source/filter/excel/excel.cxx b/sc/source/filter/excel/excel.cxx index 1a90817f99ae..7072785b8936 100644 --- a/sc/source/filter/excel/excel.cxx +++ b/sc/source/filter/excel/excel.cxx @@ -77,8 +77,11 @@ FltError ScFormatFilterPluginImpl::ScImportExcel( SfxMedium& rMedium, ScDocument using namespace ::com::sun::star; using namespace ::comphelper; - // false = use old sc filter for import (OOX only as file dumper), true = use new OOX filter for import - bool bUseOoxFilter = false; + /* Environment variable "OOO_OOXBIFFFILTER": + - "1" = use new OOX filter for import; + - undef/other = use old sc filter for import (OOX only as file dumper). */ + const sal_Char* pcFileName = ::getenv( "OOO_OOXBIFFFILTER" ); + bool bUseOoxFilter = pcFileName && (*pcFileName == '1') && (*(pcFileName + 1) == 0); if( SfxObjectShell* pDocShell = pDocument->GetDocumentShell() ) try { uno::Reference< lang::XComponent > xComponent( pDocShell->GetModel(), uno::UNO_QUERY_THROW ); @@ -87,7 +90,7 @@ FltError ScFormatFilterPluginImpl::ScImportExcel( SfxMedium& rMedium, ScDocument aArgs[ 0 ] <<= getProcessServiceFactory(); aArgs[ 1 ] <<= !bUseOoxFilter; uno::Reference< document::XImporter > xImporter( ScfApiHelper::CreateInstanceWithArgs( - CREATE_STRING( "com.sun.star.comp.oox.ExcelBiffFilter" ), aArgs ), uno::UNO_QUERY_THROW ); + CREATE_OUSTRING( "com.sun.star.comp.oox.ExcelBiffFilter" ), aArgs ), uno::UNO_QUERY_THROW ); xImporter->setTargetDocument( xComponent ); MediaDescriptor aDescriptor; |