crashtesting: fdo73974-1.doc assert on reexport to doc
try setting DefaultParentBaseURL based on the parent BaseURL for objects created this way Change-Id: Idfc44d90e4f73f23976e8648c504786955b4fce6
This commit is contained in:
parent
33fac48280
commit
a4764cfa80
@ -589,7 +589,7 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::InsertEmbedde
|
|||||||
return xRet;
|
return xRet;
|
||||||
}
|
}
|
||||||
|
|
||||||
uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::InsertEmbeddedObject( const css::uno::Sequence < css::beans::PropertyValue >& aMedium, OUString& rNewName )
|
uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::InsertEmbeddedObject( const css::uno::Sequence < css::beans::PropertyValue >& aMedium, OUString& rNewName, OUString const* pBaseURL )
|
||||||
{
|
{
|
||||||
if ( rNewName.isEmpty() )
|
if ( rNewName.isEmpty() )
|
||||||
rNewName = CreateUniqueObjectName();
|
rNewName = CreateUniqueObjectName();
|
||||||
@ -598,9 +598,14 @@ uno::Reference < embed::XEmbeddedObject > EmbeddedObjectContainer::InsertEmbedde
|
|||||||
try
|
try
|
||||||
{
|
{
|
||||||
uno::Reference < embed::XEmbeddedObjectCreator > xFactory = embed::EmbeddedObjectCreator::create( ::comphelper::getProcessComponentContext() );
|
uno::Reference < embed::XEmbeddedObjectCreator > xFactory = embed::EmbeddedObjectCreator::create( ::comphelper::getProcessComponentContext() );
|
||||||
uno::Sequence< beans::PropertyValue > aObjDescr( 1 );
|
uno::Sequence< beans::PropertyValue > aObjDescr(pBaseURL ? 2 : 1);
|
||||||
aObjDescr[0].Name = "Parent";
|
aObjDescr[0].Name = "Parent";
|
||||||
aObjDescr[0].Value <<= pImpl->m_xModel.get();
|
aObjDescr[0].Value <<= pImpl->m_xModel.get();
|
||||||
|
if (pBaseURL)
|
||||||
|
{
|
||||||
|
aObjDescr[1].Name = "DefaultParentBaseURL";
|
||||||
|
aObjDescr[1].Value <<= *pBaseURL;
|
||||||
|
}
|
||||||
xObj.set( xFactory->createInstanceInitFromMediaDescriptor(
|
xObj.set( xFactory->createInstanceInitFromMediaDescriptor(
|
||||||
pImpl->mxStorage, rNewName, aMedium, aObjDescr ), uno::UNO_QUERY );
|
pImpl->mxStorage, rNewName, aMedium, aObjDescr ), uno::UNO_QUERY );
|
||||||
uno::Reference < embed::XEmbedPersist > xPersist( xObj, uno::UNO_QUERY );
|
uno::Reference < embed::XEmbedPersist > xPersist( xObj, uno::UNO_QUERY );
|
||||||
|
@ -6947,7 +6947,7 @@ css::uno::Reference < css::embed::XEmbeddedObject > SvxMSDffManager::CheckForCo
|
|||||||
|
|
||||||
OUString aName( aDstStgName );
|
OUString aName( aDstStgName );
|
||||||
comphelper::EmbeddedObjectContainer aCnt( rDestStorage );
|
comphelper::EmbeddedObjectContainer aCnt( rDestStorage );
|
||||||
xObj = aCnt.InsertEmbeddedObject( aMedium, aName );
|
xObj = aCnt.InsertEmbeddedObject(aMedium, aName, &rBaseURL);
|
||||||
|
|
||||||
if ( !xObj.is() )
|
if ( !xObj.is() )
|
||||||
{
|
{
|
||||||
@ -6955,7 +6955,7 @@ css::uno::Reference < css::embed::XEmbeddedObject > SvxMSDffManager::CheckForCo
|
|||||||
{
|
{
|
||||||
// throw the filter parameter away as workaround
|
// throw the filter parameter away as workaround
|
||||||
aMedium.realloc( 2 );
|
aMedium.realloc( 2 );
|
||||||
xObj = aCnt.InsertEmbeddedObject( aMedium, aName );
|
xObj = aCnt.InsertEmbeddedObject(aMedium, aName, &rBaseURL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( !xObj.is() )
|
if ( !xObj.is() )
|
||||||
|
@ -110,7 +110,7 @@ public:
|
|||||||
// load an embedded object from a MediaDescriptor and insert it into the container
|
// load an embedded object from a MediaDescriptor and insert it into the container
|
||||||
// a new object will be created from the new content and returned
|
// a new object will be created from the new content and returned
|
||||||
css::uno::Reference < css::embed::XEmbeddedObject >
|
css::uno::Reference < css::embed::XEmbeddedObject >
|
||||||
InsertEmbeddedObject( const css::uno::Sequence < css::beans::PropertyValue >&, OUString& );
|
InsertEmbeddedObject( const css::uno::Sequence < css::beans::PropertyValue >&, OUString& rName, OUString const* pBaseURL = nullptr);
|
||||||
|
|
||||||
// create an embedded link based on a MediaDescriptor and insert it into the container
|
// create an embedded link based on a MediaDescriptor and insert it into the container
|
||||||
// a new object will be created from the new content and returned
|
// a new object will be created from the new content and returned
|
||||||
|
Loading…
x
Reference in New Issue
Block a user