From 11dbe9344eff982dc69072218c940348873d13f1 Mon Sep 17 00:00:00 2001 From: jiajia_deng <2894220@gmail.com> Date: Thu, 30 May 2019 10:51:38 +0800 Subject: [PATCH] Fixed #27 crashed when DPI changes Signed-off-by: jiajia_deng <2894220@gmail.com> --- tool_kits/duilib/Utils/Shadow.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/tool_kits/duilib/Utils/Shadow.cpp b/tool_kits/duilib/Utils/Shadow.cpp index 24fc68cd..2ea36246 100644 --- a/tool_kits/duilib/Utils/Shadow.cpp +++ b/tool_kits/duilib/Utils/Shadow.cpp @@ -58,10 +58,12 @@ UiRect Shadow::GetShadowCorner() const void Shadow::ResetShadowBox() { - auto rcTempShadowCorner = m_rcDefaultShadowCorner; - DpiManager::GetInstance()->ScaleRect(rcTempShadowCorner); - m_rcShadowCornerBackup = m_rcCurShadowCorner = rcTempShadowCorner; - m_pRoot->GetLayout()->SetPadding(m_rcDefaultShadowCorner); + if (m_bShadowAttached && m_pRoot) { + auto rcTempShadowCorner = m_rcDefaultShadowCorner; + DpiManager::GetInstance()->ScaleRect(rcTempShadowCorner); + m_rcShadowCornerBackup = m_rcCurShadowCorner = rcTempShadowCorner; + m_pRoot->GetLayout()->SetPadding(m_rcDefaultShadowCorner); + } } Box*Shadow::AttachShadow(Box* pRoot)