vcl/source/gdi/gdimtf.cxx | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
New commits:
commit f7b6cd87f78b786b59984e5b3c8a5a78f0ed7a94
Author: Radek Doulik<rodo@novell.com>
Date: Tue Jan 24 13:39:25 2012 +0100
fix rendering of metafiles embedded in emf+
diff --git a/vcl/source/gdi/gdimtf.cxx b/vcl/source/gdi/gdimtf.cxx
index 38d66ed..1395fe6 100644
--- a/vcl/source/gdi/gdimtf.cxx
+++ b/vcl/source/gdi/gdimtf.cxx
@@ -406,9 +406,9 @@ void GDIMetaFile::Play( OutputDevice* pOut, size_t nPos )
pOut->SetLayoutMode( 0 );
pOut->SetDigitLanguage( 0 );
- for( size_t nCurPos = nCurrentActionElement; nCurPos< nPos; nCurPos++ )
- {
- if( !Hook() )
+ OSL_TRACE("GDIMetaFile::Play on device of size: %d x %d",
pOut->GetOutputSizePixel().Width(), pOut->GetOutputSizePixel().Height());
+ if( !ImplPlayWithRenderer( pOut, Point(0,0), pOut->GetOutputSizePixel() ) ) {
+ for( size_t nCurPos = nCurrentActionElement; nCurPos< nPos; nCurPos++ )
{
MetaCommentAction* pCommentAct = static_cast<MetaCommentAction*>(pAction);
if( pAction->GetType() == META_COMMENT_ACTION&&
@@ -608,7 +608,7 @@ void GDIMetaFile::Play( OutputDevice* pOut, const Point& rPos,
{
GDIMetaFile* pMtf = pOut->GetConnectMetaFile();
- if( bUseCanvas&& !pMtf&& ImplPlayWithRenderer( pOut, rPos, aDestSize ) )
+ if( bUseCanvas&& ImplPlayWithRenderer( pOut, rPos, aDestSize ) )
return;
Size aTmpPrefSize( pOut->LogicToPixel( GetPrefSize(), aDrawMap ) );