Fixed some SVACE issues in BlurEffect 35/312935/1
authorAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 17 Jun 2024 11:24:38 +0000 (12:24 +0100)
committerAdeel Kazmi <adeel.kazmi@samsung.com>
Mon, 17 Jun 2024 11:24:38 +0000 (12:24 +0100)
Change-Id: I089fcf3e8196289fcc32101d032cd1b2cf25b3f7

dali-toolkit/internal/controls/render-effects/blur-effect-impl.cpp
dali-toolkit/public-api/controls/control-impl.cpp

index 4408e0ae29084082fbb0a74c92255cf85b5dd20d..3ff4a2ff92721eb46e4882062bdaa2980509e1df 100644 (file)
@@ -56,6 +56,7 @@ namespace Internal
 BlurEffectImpl::BlurEffectImpl(bool isBackground)
 : RenderEffectImpl(),
   mInternalRoot(Actor::New()),
+  mPixelFormat(Pixel::Format::INVALID),
   mDownscaleFactor(BLUR_EFFECT_DOWNSCALE_FACTOR),
   mPixelRadius(BLUR_EFFECT_PIXEL_RADIUS),
   mBellCurveWidth(BLUR_EFFECT_BELL_CURVE_WIDTH),
@@ -69,6 +70,7 @@ BlurEffectImpl::BlurEffectImpl(bool isBackground)
 BlurEffectImpl::BlurEffectImpl(float downscaleFactor, uint32_t blurRadius, float bellCurveWidth, bool isBackground)
 : RenderEffectImpl(),
   mInternalRoot(Actor::New()),
+  mPixelFormat(Pixel::Format::INVALID),
   mDownscaleFactor(downscaleFactor),
   mPixelRadius((blurRadius >> 2) + 1),
   mBellCurveWidth(std::max(bellCurveWidth, BLUR_EFFECT_DIVIDE_ZERO_EPSILON)),
index f78c02c2d15f133b7b0cb948b4fc4f9108388d7b..a1f182811225e6b69cd35226862a8317d48f35df 100644 (file)
@@ -169,29 +169,25 @@ void Control::ClearBackground()
 
 void Control::SetRenderEffect(Toolkit::RenderEffect effect)
 {
-  if(mImpl->mRenderEffect == effect)
+  if(mImpl->mRenderEffect != effect)
   {
-    return;
-  }
-  mImpl->mRenderEffect = effect;
+    mImpl->mRenderEffect = effect;
 
-  BaseObject&                          handle = effect.GetBaseObject();
-  Toolkit::Internal::RenderEffectImpl* object = dynamic_cast<Toolkit::Internal::RenderEffectImpl*>(&handle);
+    BaseObject&                          handle = effect.GetBaseObject();
+    Toolkit::Internal::RenderEffectImpl* object = dynamic_cast<Toolkit::Internal::RenderEffectImpl*>(&handle);
+    DALI_ASSERT_ALWAYS(object && "Not a valid RenderEffect set.");
 
-  Dali::Toolkit::Control ownerControl(GetOwner());
-  object->SetOwnerControl(ownerControl);
-  object->Activate();
+    Dali::Toolkit::Control ownerControl(GetOwner());
+    object->SetOwnerControl(ownerControl);
+    object->Activate();
+  }
 }
 
 void Control::ClearRenderEffect()
 {
   BaseObject&                          handle = mImpl->mRenderEffect.GetBaseObject();
   Toolkit::Internal::RenderEffectImpl* object = dynamic_cast<Toolkit::Internal::RenderEffectImpl*>(&handle);
-
-  if(!object)
-  {
-    DALI_ASSERT_ALWAYS(false && "Set any render effect before you clear.");
-  }
+  DALI_ASSERT_ALWAYS(object && "Set any render effect before you clear.");
 
   object->Deactivate();
   object->SetOwnerControl(Toolkit::Control());