diff --git a/src/add-ons/screen_savers/ifs/IFSSaver.cpp b/src/add-ons/screen_savers/ifs/IFSSaver.cpp index af3325fac2..94babbbf50 100644 --- a/src/add-ons/screen_savers/ifs/IFSSaver.cpp +++ b/src/add-ons/screen_savers/ifs/IFSSaver.cpp @@ -153,9 +153,18 @@ IFSSaver::StartSaver(BView* view, bool preview) SetTickSize((bigtime_t)floor(1000000.0 / fps + 0.5)); fIsPreview = preview; + + if (view == NULL) + return B_BAD_VALUE; + fBounds = view->Bounds(); + if (!fBounds.IsValid()) + return B_BAD_VALUE; _Init(fBounds); + if (fIFS == NULL) + return B_ERROR; + fIFS->SetAdditive(fIsPreview || fAdditive); fIFS->SetSpeed(fSpeed);