diff options
author | Zolnai Tamás <tamas.zolnai@collabora.com> | 2014-11-22 22:01:25 +0100 |
---|---|---|
committer | Zolnai Tamás <tamas.zolnai@collabora.com> | 2014-11-22 22:01:25 +0100 |
commit | e398dda0da19614efb0c8f16d11f8f54d35f6270 (patch) | |
tree | 19b1e34f652754c769217e1714cd746b301c57aa | |
parent | ae09c6f74b9a18d7d1ef2c51535f327ae3e2d3d1 (diff) |
fdo#86573: Impress does not show pictures anymore
Regression from:
286e2f5c6ec829bc0987b1be7016699f7ef03e5e
Sometimes SdrGrafObj import the image file just as a
preview (with low resolution) and late when the real
picture is needed it just throws this preview and tries
to load the image again.
This preview works only with package URL so in this
case we should not forget that URL.
Plus an other related potential image loss situation:
- Image preview is thrown when we actually have no
package URL from we can import the image again.
(cherry picked from commit f0b28806eebb1477066d44de49b5d1d61a8e84cf)
Change-Id: Ib21f400eb6d28133e8598e6b201209e5dd1a976f
-rw-r--r-- | svx/source/svdraw/svdograf.cxx | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/svx/source/svdraw/svdograf.cxx b/svx/source/svdraw/svdograf.cxx index cb31fc2c896f..33dbc5f56fc6 100644 --- a/svx/source/svdraw/svdograf.cxx +++ b/svx/source/svdraw/svdograf.cxx @@ -600,7 +600,7 @@ OUString SdrGrafObj::GetGrafStreamURL() const void SdrGrafObj::ForceSwapIn() const { - if( mbIsPreview ) + if( mbIsPreview && pGraphic->HasUserData() ) { // removing preview graphic const OUString aUserData( pGraphic->GetUserData() ); @@ -1409,9 +1409,15 @@ IMPL_LINK( SdrGrafObj, ImpSwapHdl, GraphicObject*, pO ) GRFILTER_FORMAT_DONTKNOW, NULL, 0, pFilterData)) { const OUString aNewUserData( pGraphic->GetUserData() ); - pGraphic->SetGraphic( aGraphic ); - pGraphic->SetUserData(); + if( mbIsPreview ) + { + pGraphic->SetUserData(aNewUserData); + } + else + { + pGraphic->SetUserData(); + } // Graphic successfully swapped in. pRet = GRFMGR_AUTOSWAPSTREAM_LOADED; |