equal
deleted
inserted
replaced
491 TInt err = KErrNone; |
491 TInt err = KErrNone; |
492 if ( iPluginFlag.IsClear( EPluginFlagTimerNotUsed ) ) |
492 if ( iPluginFlag.IsClear( EPluginFlagTimerNotUsed ) ) |
493 { |
493 { |
494 err = iPlugin->Draw( gc ); |
494 err = iPlugin->Draw( gc ); |
495 } |
495 } |
496 |
496 //Notice:add this code to shield the issue ELWG-7SF3R3. |
497 if( err != KErrNone ) |
497 //Prevent screensaver plugin from being called unexpected draw function, |
498 { |
498 //which would cause chosen images are not displayed. |
499 iPluginFlag.Set( EPluginFlagSuspend ); |
499 //Check the err code return by iPlugin->Draw: |
500 } |
500 //If draw action is correct and iPluginFlag has already been set EPluginFlagSuspend, |
|
501 //then clear this EPluginFlagSuspend |
|
502 if ( KErrNone == err && iPluginFlag.IsSet( EPluginFlagSuspend ) ) |
|
503 { |
|
504 iPluginFlag.Clear( EPluginFlagSuspend ); |
|
505 } |
|
506 |
|
507 if( err != KErrNone ) |
|
508 { |
|
509 iPluginFlag.Set( EPluginFlagSuspend ); |
|
510 } |
501 } |
511 } |
502 |
512 |
503 // ----------------------------------------------------------------------------- |
513 // ----------------------------------------------------------------------------- |
504 // CScreensaverCtrlPlugin::LoadPluginL |
514 // CScreensaverCtrlPlugin::LoadPluginL |
505 // ----------------------------------------------------------------------------- |
515 // ----------------------------------------------------------------------------- |