From 8d4e0d47f4cd0325be84ebf310fd8de989761939 Mon Sep 17 00:00:00 2001 From: weili Date: Fri, 3 Jun 2016 14:06:36 -0700 Subject: Fix more bugs found by /analyze tool Three more bugs are discovered: -- potientially used freed pointer; -- potientially used uninitialized variable; -- Used '&&' instead of bitwise operator '&' BUG=chromium:613623, chromium:427616 Review-Url: https://codereview.chromium.org/2040503002 --- xfa/fwl/core/cfwl_widgetmgr.cpp | 3 +-- xfa/fxfa/app/xfa_ffchoicelist.cpp | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) (limited to 'xfa') diff --git a/xfa/fwl/core/cfwl_widgetmgr.cpp b/xfa/fwl/core/cfwl_widgetmgr.cpp index 90d621477a..78d8206369 100644 --- a/xfa/fwl/core/cfwl_widgetmgr.cpp +++ b/xfa/fwl/core/cfwl_widgetmgr.cpp @@ -768,8 +768,7 @@ FX_BOOL CFWL_WidgetMgrDelegate::IsNeedRepaint(IFWL_Widget* pWidget, FX_BOOL bOrginPtIntersectWidthDirty = rtDirty.Contains(rtWidget.left, rtWidget.top); static FWL_NEEDREPAINTHITDATA hitPoint[kNeedRepaintHitPoints]; - int32_t iSize = sizeof(FWL_NEEDREPAINTHITDATA); - FXSYS_memset(hitPoint, 0, iSize); + FXSYS_memset(hitPoint, 0, sizeof(hitPoint)); FX_FLOAT fxPiece = rtWidget.width / kNeedRepaintHitPiece; FX_FLOAT fyPiece = rtWidget.height / kNeedRepaintHitPiece; hitPoint[2].hitPoint.x = hitPoint[6].hitPoint.x = rtWidget.left; diff --git a/xfa/fxfa/app/xfa_ffchoicelist.cpp b/xfa/fxfa/app/xfa_ffchoicelist.cpp index 51d693fa35..4258eef29b 100644 --- a/xfa/fxfa/app/xfa_ffchoicelist.cpp +++ b/xfa/fxfa/app/xfa_ffchoicelist.cpp @@ -91,7 +91,7 @@ FX_BOOL CXFA_FFListBox::IsDataChanged() { for (int32_t i = 0; i < iSels; ++i) { IFWL_ListItem* hlistItem = pListBox->GetItem(iSelArray[i]); - if (!(pListBox->GetItemStates(hlistItem) && FWL_ITEMSTATE_LTB_Selected)) + if (!(pListBox->GetItemStates(hlistItem) & FWL_ITEMSTATE_LTB_Selected)) return TRUE; } return FALSE; -- cgit v1.2.3