diff -r 0bfd55b8504e -r d8eca2b0590d scrsaver/scrsaverplugins/SlideshowPlugin/src/SlideshowPlugin.cpp --- a/scrsaver/scrsaverplugins/SlideshowPlugin/src/SlideshowPlugin.cpp Tue Apr 27 16:38:49 2010 +0300 +++ b/scrsaver/scrsaverplugins/SlideshowPlugin/src/SlideshowPlugin.cpp Tue May 11 16:14:23 2010 +0300 @@ -264,12 +264,13 @@ return KErrNone; } // Make sure we have something to display - if (iModel->NumberOfSlides() == 0) + if (iModel->NumberOfSlides() == 0 && iIsLoadFinished ) { + iHost->RevertToDefaultSaver(); SSPLOGGER_WRITE("Draw(): Nothing to display, suspending"); SSPLOGGER_LEAVEFN("Draw()"); // iHost->Suspend( -1 ); // This place will be crashed when transform to default type - return KErrNotFound; + return KErrNone; } CSlideshowSlide* pSlide = iModel->NextSlide(EFalse); @@ -720,7 +721,7 @@ void CSlideshowPlugin::LoadSlidesL() { SSPLOGGER_ENTERFN("LoadSlidesL()"); - + iIsLoadFinished = EFalse; // Based on settings, load predefined set or random slides if (iSettings->iSlideshowType == KSlideshowTypeRandom) { @@ -730,7 +731,7 @@ { LoadSlideSetL(); } - + iIsLoadFinished = ETrue; SSPLOGGER_LEAVEFN("LoadSlidesL()"); }