--- 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()");
}