Fixed Cairo's render target setting.

This commit is contained in:
Maciej Suminski 2013-09-03 17:46:05 +02:00
parent 2a45987d46
commit 55744d1e9a
1 changed files with 9 additions and 3 deletions

View File

@ -736,8 +736,13 @@ void CAIRO_GAL::SetTarget( RenderTarget aTarget )
return; return;
// Cairo grouping prevents display of overlapping items on the same layer in the lighter color // Cairo grouping prevents display of overlapping items on the same layer in the lighter color
cairo_pop_group_to_source( currentContext ); if( isInitialized )
cairo_paint_with_alpha( currentContext, fillColor.a ); {
storePath();
cairo_pop_group_to_source( currentContext );
cairo_paint_with_alpha( currentContext, fillColor.a );
}
switch( aTarget ) switch( aTarget )
{ {
@ -752,7 +757,8 @@ void CAIRO_GAL::SetTarget( RenderTarget aTarget )
break; break;
} }
cairo_push_group( currentContext ); if( isInitialized )
cairo_push_group( currentContext );
currentTarget = aTarget; currentTarget = aTarget;
} }