Kaydet (Commit) 3ac0778c authored tarafından Caolán McNamara's avatar Caolán McNamara

coverity#738785 reorg to silence Uninitialized pointer field

Change-Id: If2225e77215e2a6fb6b9e9dfc6021a2c20babe50
üst 656f639d
...@@ -96,7 +96,36 @@ struct ScIconSetInfo ...@@ -96,7 +96,36 @@ struct ScIconSetInfo
struct CellInfo struct CellInfo
{ {
CellInfo() = default; CellInfo()
: pPatternAttr(nullptr)
, pConditionSet(nullptr)
, pBackground(nullptr) // TODO: omit?
, pLinesAttr(nullptr)
, mpTLBRLine(nullptr)
, mpBLTRLine(nullptr)
, pShadowAttr(nullptr)
, pHShadowOrigin(nullptr)
, pVShadowOrigin(nullptr)
, eHShadowPart(SC_SHADOW_HSTART)
, eVShadowPart(SC_SHADOW_HSTART)
, nClipMark(SC_CLIPMARK_NONE)
, nWidth(0)
, nRotateDir(SC_ROTDIR_NONE)
, bMarked(false)
, bEmptyCellText(false)
, bMerged(false)
, bHOverlapped(false)
, bVOverlapped(false)
, bAutoFilter(false)
, bPivotButton(false)
, bPivotPopupButton(false)
, bFilterActive(false)
, bPrinted(false) // view-internal
, bHideGrid(false) // view-internal
, bEditEngine(false) // view-internal
{
}
~CellInfo() = default; ~CellInfo() = default;
CellInfo(const CellInfo&) = delete; CellInfo(const CellInfo&) = delete;
const CellInfo& operator=(const CellInfo&) = delete; const CellInfo& operator=(const CellInfo&) = delete;
......
...@@ -157,11 +157,11 @@ class RowInfoFiller ...@@ -157,11 +157,11 @@ class RowInfoFiller
{ {
alignArray(nRow); alignArray(nRow);
RowInfo* pThisRowInfo = &mpRowInfo[mnArrY]; RowInfo& rThisRowInfo = mpRowInfo[mnArrY];
CellInfo* pInfo = &pThisRowInfo->pCellInfo[mnArrX]; CellInfo& rInfo = rThisRowInfo.pCellInfo[mnArrX];
pInfo->maCell = rCell; rInfo.maCell = rCell;
pThisRowInfo->bEmptyText = false; rThisRowInfo.bEmptyText = false;
pInfo->bEmptyCellText = false; rInfo.bEmptyCellText = false;
++mnArrY; ++mnArrY;
} }
...@@ -266,55 +266,27 @@ void initCellInfo(RowInfo* pRowInfo, SCSIZE nArrCount, SCCOL nRotMax, bool bPain ...@@ -266,55 +266,27 @@ void initCellInfo(RowInfo* pRowInfo, SCSIZE nArrCount, SCCOL nRotMax, bool bPain
const SvxShadowItem* pDefShadow, SCROW nBlockStartY, SCROW nBlockEndY, const SvxShadowItem* pDefShadow, SCROW nBlockStartY, SCROW nBlockEndY,
SCCOL nBlockStartX, SCCOL nBlockEndX) SCCOL nBlockStartX, SCCOL nBlockEndX)
{ {
for (SCSIZE nArrRow = 0; nArrRow < nArrCount; nArrRow++) for (SCSIZE nArrRow = 0; nArrRow < nArrCount; ++nArrRow)
{ {
RowInfo* pThisRowInfo = &pRowInfo[nArrRow]; RowInfo& rThisRowInfo = pRowInfo[nArrRow];
SCROW nY = pThisRowInfo->nRowNo; SCROW nY = rThisRowInfo.nRowNo;
pThisRowInfo->pCellInfo = new CellInfo[ nRotMax+1+2 ]; // to delete the caller! rThisRowInfo.pCellInfo = new CellInfo[nRotMax + 1 + 2]; // to delete the caller!
for (SCCOL nArrCol = 0; nArrCol <= nRotMax+2; nArrCol++) // Preassign cell info for (SCCOL nArrCol = 0; nArrCol <= nRotMax+2; ++nArrCol) // Preassign cell info
{ {
SCCOL nX; CellInfo& rInfo = rThisRowInfo.pCellInfo[nArrCol];
if (nArrCol>0)
nX = nArrCol-1;
else
nX = MAXCOL+1; // invalid
CellInfo* pInfo = &pThisRowInfo->pCellInfo[nArrCol];
pInfo->bEmptyCellText = true;
pInfo->maCell.clear();
if (bPaintMarks) if (bPaintMarks)
pInfo->bMarked = ( nX >= nBlockStartX && nX <= nBlockEndX {
&& nY >= nBlockStartY && nY <= nBlockEndY ); SCCOL nX;
else if (nArrCol>0)
pInfo->bMarked = false; nX = nArrCol-1;
pInfo->nWidth = 0; else
nX = MAXCOL+1; // invalid
pInfo->nClipMark = SC_CLIPMARK_NONE; rInfo.bMarked = (nX >= nBlockStartX && nX <= nBlockEndX &&
pInfo->bMerged = false; nY >= nBlockStartY && nY <= nBlockEndY);
pInfo->bHOverlapped = false; }
pInfo->bVOverlapped = false; rInfo.bEmptyCellText = true;
pInfo->bAutoFilter = false; rInfo.pShadowAttr = pDefShadow;
pInfo->bPivotButton = false;
pInfo->bPivotPopupButton = false;
pInfo->bFilterActive = false;
pInfo->nRotateDir = SC_ROTDIR_NONE;
pInfo->bPrinted = false; // view-internal
pInfo->bHideGrid = false; // view-internal
pInfo->bEditEngine = false; // view-internal
pInfo->pBackground = nullptr; //TODO: omit?
pInfo->pPatternAttr = nullptr;
pInfo->pConditionSet= nullptr;
pInfo->pLinesAttr = nullptr;
pInfo->mpTLBRLine = nullptr;
pInfo->mpBLTRLine = nullptr;
pInfo->pShadowAttr = pDefShadow;
pInfo->pHShadowOrigin = nullptr;
pInfo->pVShadowOrigin = nullptr;
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment