|
 |
f085be |
From fd641c7b23ce4205c29fc0c564b73336cb2cfb07 Mon Sep 17 00:00:00 2001
|
|
 |
f085be |
From: Oliver-Rainer Wittmann <orw@apache.org>
|
|
 |
f085be |
Date: Wed, 23 Jul 2014 08:53:15 +0000
|
|
 |
f085be |
Subject: [PATCH] Resolves: #i125289# do apply possible changed
|
|
 |
f085be |
<GraphicStreamURL>...
|
|
 |
f085be |
|
|
 |
f085be |
only for embedded images which already have its stream inside the package
|
|
 |
f085be |
|
|
 |
f085be |
fixes also issue 125290
|
|
 |
f085be |
|
|
 |
f085be |
(cherry picked from commit 9602a121b458e7456fc533dad86f434f846a72ba)
|
|
 |
f085be |
|
|
 |
f085be |
Conflicts:
|
|
 |
f085be |
xmloff/source/draw/shapeexport2.cxx
|
|
 |
f085be |
|
|
 |
f085be |
Change-Id: I5af0093b20f2f291d3a94c690bfbdb59a59320c3
|
|
 |
f085be |
---
|
|
 |
f085be |
xmloff/source/draw/shapeexport.cxx | 32 +++++++++++++++++++-------------
|
|
 |
f085be |
1 file changed, 19 insertions(+), 13 deletions(-)
|
|
 |
f085be |
|
|
 |
f085be |
diff --git a/xmloff/source/draw/shapeexport.cxx b/xmloff/source/draw/shapeexport.cxx
|
|
 |
f085be |
index 7f33e58..ba8ce16 100644
|
|
 |
f085be |
--- a/xmloff/source/draw/shapeexport.cxx
|
|
 |
f085be |
+++ b/xmloff/source/draw/shapeexport.cxx
|
|
 |
f085be |
@@ -2256,9 +2256,12 @@ void XMLShapeExport::ImpExportGraphicObjectShape(
|
|
 |
f085be |
OUString aResolveURL( sImageURL );
|
|
 |
f085be |
const OUString sPackageURL( "vnd.sun.star.Package:" );
|
|
 |
f085be |
|
|
 |
f085be |
- // trying to preserve the filename
|
|
 |
f085be |
+ // trying to preserve the filename for embedded images which already have its stream inside the package
|
|
 |
f085be |
+ bool bIsEmbeddedImageWithExistingStreamInPackage = false;
|
|
 |
f085be |
if ( aStreamURL.match( sPackageURL, 0 ) )
|
|
 |
f085be |
{
|
|
 |
f085be |
+ bIsEmbeddedImageWithExistingStreamInPackage = true;
|
|
 |
f085be |
+
|
|
 |
f085be |
OUString sRequestedName( aStreamURL.copy( sPackageURL.getLength(), aStreamURL.getLength() - sPackageURL.getLength() ) );
|
|
 |
f085be |
sal_Int32 nLastIndex = sRequestedName.lastIndexOf( '/' ) + 1;
|
|
 |
f085be |
if ( ( nLastIndex > 0 ) && ( nLastIndex < sRequestedName.getLength() ) )
|
|
 |
f085be |
@@ -2278,20 +2281,23 @@ void XMLShapeExport::ImpExportGraphicObjectShape(
|
|
 |
f085be |
|
|
 |
f085be |
if( !aStr.isEmpty() )
|
|
 |
f085be |
{
|
|
 |
f085be |
- aStreamURL = sPackageURL;
|
|
 |
f085be |
- if( aStr[ 0 ] == '#' )
|
|
 |
f085be |
- {
|
|
 |
f085be |
- aStreamURL = aStreamURL.concat( aStr.copy( 1, aStr.getLength() - 1 ) );
|
|
 |
f085be |
- }
|
|
 |
f085be |
- else
|
|
 |
f085be |
+ // apply possible changed stream URL to embedded image object
|
|
 |
f085be |
+ if ( bIsEmbeddedImageWithExistingStreamInPackage )
|
|
 |
f085be |
{
|
|
 |
f085be |
- aStreamURL = aStreamURL.concat( aStr );
|
|
 |
f085be |
- }
|
|
 |
f085be |
+ aStreamURL = sPackageURL;
|
|
 |
f085be |
+ if ( aStr[0] == '#' )
|
|
 |
f085be |
+ {
|
|
 |
f085be |
+ aStreamURL = aStreamURL.concat( aStr.copy( 1, aStr.getLength() - 1 ) );
|
|
 |
f085be |
+ }
|
|
 |
f085be |
+ else
|
|
 |
f085be |
+ {
|
|
 |
f085be |
+ aStreamURL = aStreamURL.concat( aStr );
|
|
 |
f085be |
+ }
|
|
 |
f085be |
|
|
 |
f085be |
- // update stream URL for load on demand
|
|
 |
f085be |
- uno::Any aAny;
|
|
 |
f085be |
- aAny <<= aStreamURL;
|
|
 |
f085be |
- xPropSet->setPropertyValue("GraphicStreamURL", aAny );
|
|
 |
f085be |
+ uno::Any aAny;
|
|
 |
f085be |
+ aAny <<= aStreamURL;
|
|
 |
f085be |
+ xPropSet->setPropertyValue( OUString("GraphicStreamURL"), aAny );
|
|
 |
f085be |
+ }
|
|
 |
f085be |
|
|
 |
f085be |
mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_TYPE, XML_SIMPLE );
|
|
 |
f085be |
mrExport.AddAttribute(XML_NAMESPACE_XLINK, XML_SHOW, XML_EMBED );
|
|
 |
f085be |
--
|
|
 |
f085be |
1.9.3
|
|
 |
f085be |
|