Kaydet (Commit) 87cbbdc9 authored tarafından Eike Rathke's avatar Eike Rathke

Resolves: tdf#108654 check nTabNo against maTabData size

ScViewData::DeleteTab() and DeleteTabs() never did that and worked by accident
for which commit 73dec498 removed the
grounding..

Change-Id: I95460cd017d558c073df7891551d0251009dc1d4
üst 7382bfda
...@@ -545,6 +545,11 @@ void ScViewData::DeleteTab( SCTAB nTab ) ...@@ -545,6 +545,11 @@ void ScViewData::DeleteTab( SCTAB nTab )
delete maTabData.at(nTab); delete maTabData.at(nTab);
maTabData.erase(maTabData.begin() + nTab); maTabData.erase(maTabData.begin() + nTab);
if (static_cast<size_t>(nTabNo) >= maTabData.size())
{
EnsureTabDataSize(1);
nTabNo = maTabData.size() - 1;
}
UpdateCurrentTab(); UpdateCurrentTab();
mpMarkData->DeleteTab( nTab ); mpMarkData->DeleteTab( nTab );
} }
...@@ -558,6 +563,11 @@ void ScViewData::DeleteTabs( SCTAB nTab, SCTAB nSheets ) ...@@ -558,6 +563,11 @@ void ScViewData::DeleteTabs( SCTAB nTab, SCTAB nSheets )
} }
maTabData.erase(maTabData.begin() + nTab, maTabData.begin()+ nTab+nSheets); maTabData.erase(maTabData.begin() + nTab, maTabData.begin()+ nTab+nSheets);
if (static_cast<size_t>(nTabNo) >= maTabData.size())
{
EnsureTabDataSize(1);
nTabNo = maTabData.size() - 1;
}
UpdateCurrentTab(); UpdateCurrentTab();
} }
......
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