diff options
Diffstat (limited to 'xmloff')
-rw-r--r-- | xmloff/source/draw/ximpbody.cxx | 23 | ||||
-rw-r--r-- | xmloff/source/draw/ximpshap.cxx | 23 |
2 files changed, 23 insertions, 23 deletions
diff --git a/xmloff/source/draw/ximpbody.cxx b/xmloff/source/draw/ximpbody.cxx index c9fee0cf8656..7bd66b69397c 100644 --- a/xmloff/source/draw/ximpbody.cxx +++ b/xmloff/source/draw/ximpbody.cxx @@ -279,29 +279,6 @@ void SdXMLDrawPageContext::EndElement() if(xNodeSupplier.is()) xmloff::AnimationNodeContext::postProcessRootNode( GetSdImport(), xNodeSupplier->getAnimationNode(), xPageProps ); } - - // tdf#93994 call a custom slot to be able to reset the UNO API - // implementations held on the SdrObjects of type - // SdrObjCustomShape - those tend to linger until the entire file - // is loaded. For large files with a lot of these 32bit systems - // may crash due to being out of ressources after ca. 4200 - // Outliners and VirtualDevices used there as RefDevice - try - { - uno::Reference< beans::XPropertySet > xPropSet(GetLocalShapesContext(), uno::UNO_QUERY); - - if(xPropSet.is()) - { - const OUString sFlushCustomShapeUnoApiObjects("FlushCustomShapeUnoApiObjects"); - uno::Any aAny; - aAny <<= true; - xPropSet->setPropertyValue(sFlushCustomShapeUnoApiObjects, aAny); - } - } - catch(const uno::Exception&) - { - OSL_FAIL("could not flush after load"); - } } SdXMLBodyContext::SdXMLBodyContext( SdXMLImport& rImport, diff --git a/xmloff/source/draw/ximpshap.cxx b/xmloff/source/draw/ximpshap.cxx index fd684a60326a..ddc184108bb0 100644 --- a/xmloff/source/draw/ximpshap.cxx +++ b/xmloff/source/draw/ximpshap.cxx @@ -3891,6 +3891,29 @@ void SdXMLCustomShapeContext::EndElement() } SdXMLShapeContext::EndElement(); + + // tdf#98163 call a custom slot to be able to reset the UNO API + // implementations held on the SdrObjects of type + // SdrObjCustomShape - those tend to linger until the entire file + // is loaded. For large files with a lot of these, 32bit systems + // may crash due to being out of ressources after ca. 4200 + // Outliners and VirtualDevices used there as RefDevice + try + { + uno::Reference< beans::XPropertySet > xPropSet(mxShape, uno::UNO_QUERY); + + if(xPropSet.is()) + { + const OUString sFlushCustomShapeUnoApiObjects("FlushCustomShapeUnoApiObjects"); + uno::Any aAny; + aAny <<= sal_True; + xPropSet->setPropertyValue(sFlushCustomShapeUnoApiObjects, aAny); + } + } + catch(const uno::Exception&) + { + OSL_FAIL("could not flush after load"); + } } SvXMLImportContext* SdXMLCustomShapeContext::CreateChildContext( |