Kaydet (Commit) 37f4239e authored tarafından Caolán McNamara's avatar Caolán McNamara

ofz#4845 avoid oom

Change-Id: I816e2a2e2c21bf999c261e59c860fd142ba59f76
üst 2ed6eba4
......@@ -2675,6 +2675,10 @@ void SmXMLTableContext_Impl::EndElement()
nCols = std::max(nCols, pArray->GetNumSubNodes());
aReverseStack.push_front(std::unique_ptr<SmNode>(pArray));
}
if (nCols > SAL_MAX_UINT16)
throw std::range_error("column limit");
if (nRows > SAL_MAX_UINT16)
throw std::range_error("row limit");
aExpressionArray.resize(nCols*nRows);
size_t j=0;
while ( !aReverseStack.empty() )
......@@ -2691,7 +2695,7 @@ void SmXMLTableContext_Impl::EndElement()
aToken.eType = TMATRIX;
std::unique_ptr<SmMatrixNode> pSNode(new SmMatrixNode(aToken));
pSNode->SetSubNodes(aExpressionArray);
pSNode->SetRowCol(static_cast<sal_uInt16>(nRows),nCols);
pSNode->SetRowCol(nRows, nCols);
rNodeStack.push_front(std::move(pSNode));
}
......
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