summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-09-13 14:30:26 +0100
committerCaolán McNamara <caolanm@redhat.com>2020-09-13 16:40:07 +0200
commit8ff2889f417fdf9a2a2b849189dfd4e693bb7a45 (patch)
treecc776c62bac6b5087534aa05c3f9ede8618aa83f
parent209838cad5f23836da7f3330960d25b5618dcd90 (diff)
MakeRangeFromName never passed a null ScDocument*
Change-Id: Ie9de24e4be10efb071139f02576058cee512bc7a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102579 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
-rw-r--r--sc/inc/rangeutl.hxx2
-rw-r--r--sc/source/core/tool/rangeutl.cxx14
-rw-r--r--sc/source/ui/app/inputwin.cxx4
-rw-r--r--sc/source/ui/miscdlgs/anyrefdg.cxx2
-rw-r--r--sc/source/ui/miscdlgs/optsolver.cxx2
-rw-r--r--sc/source/ui/unoobj/cellsuno.cxx4
-rw-r--r--sc/source/ui/unoobj/docuno.cxx4
-rw-r--r--sc/source/ui/view/tabvwsh3.cxx4
8 files changed, 18 insertions, 18 deletions
diff --git a/sc/inc/rangeutl.hxx b/sc/inc/rangeutl.hxx
index f5468ad2728f..a65939e81e03 100644
--- a/sc/inc/rangeutl.hxx
+++ b/sc/inc/rangeutl.hxx
@@ -72,7 +72,7 @@ public:
ScAddress::Details const & rDetails = ScAddress::detailsOOOa1 );
static bool MakeRangeFromName( const OUString& rName,
- const ScDocument* pDoc,
+ const ScDocument& rDoc,
SCTAB nCurTab,
ScRange& rRange,
RutlNameScope eScope=RUTL_NAMES,
diff --git a/sc/source/core/tool/rangeutl.cxx b/sc/source/core/tool/rangeutl.cxx
index 6faacbaaf6cf..340b76eeada1 100644
--- a/sc/source/core/tool/rangeutl.cxx
+++ b/sc/source/core/tool/rangeutl.cxx
@@ -234,7 +234,7 @@ bool ScRangeUtil::IsAbsPos( const OUString& rPosStr,
bool ScRangeUtil::MakeRangeFromName (
const OUString& rName,
- const ScDocument* pDoc,
+ const ScDocument& rDoc,
SCTAB nCurTab,
ScRange& rRange,
RutlNameScope eScope,
@@ -257,7 +257,7 @@ bool ScRangeUtil::MakeRangeFromName (
if (nEndPos != -1 && nStartPos != -1)
{
OUString aSheetName = aName.copy(nStartPos+2, nEndPos-nStartPos-2);
- if (pDoc->GetTable(aSheetName, nTable))
+ if (rDoc.GetTable(aSheetName, nTable))
{
aName = aName.copy(0, nStartPos);
}
@@ -265,13 +265,13 @@ bool ScRangeUtil::MakeRangeFromName (
nTable = nCurTab;
}
//then check for local range names
- ScRangeName* pRangeNames = pDoc->GetRangeName( nTable );
+ ScRangeName* pRangeNames = rDoc.GetRangeName( nTable );
ScRangeData* pData = nullptr;
aName = ScGlobal::getCharClassPtr()->uppercase(aName);
if ( pRangeNames )
pData = pRangeNames->findByUpperName(aName);
if (!pData)
- pData = pDoc->GetRangeName()->findByUpperName(aName);
+ pData = rDoc.GetRangeName()->findByUpperName(aName);
if (pData)
{
OUString aStrArea;
@@ -280,7 +280,7 @@ bool ScRangeUtil::MakeRangeFromName (
pData->GetSymbol( aStrArea );
- if ( IsAbsArea( aStrArea, pDoc, nTable,
+ if ( IsAbsArea( aStrArea, &rDoc, nTable,
nullptr, &aStartPos, &aEndPos, rDetails ) )
{
nTab = aStartPos.Tab();
@@ -294,7 +294,7 @@ bool ScRangeUtil::MakeRangeFromName (
{
CutPosString( aStrArea, aStrArea );
- if ( IsAbsPos( aStrArea, pDoc, nTable,
+ if ( IsAbsPos( aStrArea, &rDoc, nTable,
nullptr, &aStartPos, rDetails ) )
{
nTab = aStartPos.Tab();
@@ -307,7 +307,7 @@ bool ScRangeUtil::MakeRangeFromName (
}
else if( eScope==RUTL_DBASE )
{
- ScDBCollection::NamedDBs& rDbNames = pDoc->GetDBCollection()->getNamedDBs();
+ ScDBCollection::NamedDBs& rDbNames = rDoc.GetDBCollection()->getNamedDBs();
ScDBData* pData = rDbNames.findByUpperName(ScGlobal::getCharClassPtr()->uppercase(rName));
if (pData)
{
diff --git a/sc/source/ui/app/inputwin.cxx b/sc/source/ui/app/inputwin.cxx
index 6f2245de753f..82c8c0925a06 100644
--- a/sc/source/ui/app/inputwin.cxx
+++ b/sc/source/ui/app/inputwin.cxx
@@ -2330,9 +2330,9 @@ static ScNameInputType lcl_GetInputType( const OUString& rText )
eRet = SC_NAME_INPUT_RANGE;
else if ( aAddress.Parse( rText, pDoc, eConv ) & ScRefFlags::VALID )
eRet = SC_NAME_INPUT_CELL;
- else if ( ScRangeUtil::MakeRangeFromName( rText, pDoc, nTab, aRange, RUTL_NAMES, eConv ) )
+ else if ( ScRangeUtil::MakeRangeFromName( rText, *pDoc, nTab, aRange, RUTL_NAMES, eConv ) )
eRet = SC_NAME_INPUT_NAMEDRANGE;
- else if ( ScRangeUtil::MakeRangeFromName( rText, pDoc, nTab, aRange, RUTL_DBASE, eConv ) )
+ else if ( ScRangeUtil::MakeRangeFromName( rText, *pDoc, nTab, aRange, RUTL_DBASE, eConv ) )
eRet = SC_NAME_INPUT_DATABASE;
else if ( comphelper::string::isdigitAsciiString( rText ) &&
( nNumeric = rText.toInt32() ) > 0 && nNumeric <= pDoc->MaxRow()+1 )
diff --git a/sc/source/ui/miscdlgs/anyrefdg.cxx b/sc/source/ui/miscdlgs/anyrefdg.cxx
index 5610e6d63296..92c3727ded49 100644
--- a/sc/source/ui/miscdlgs/anyrefdg.cxx
+++ b/sc/source/ui/miscdlgs/anyrefdg.cxx
@@ -161,7 +161,7 @@ bool ScFormulaReferenceHelper::ParseWithNames( ScRangeList& rRanges, const OUStr
aRange.aEnd.SetTab( aRange.aStart.Tab() );
rRanges.push_back( aRange );
}
- else if ( ScRangeUtil::MakeRangeFromName( aRangeStr, &rDoc, m_nRefTab, aRange, RUTL_NAMES, aDetails ) )
+ else if ( ScRangeUtil::MakeRangeFromName( aRangeStr, rDoc, m_nRefTab, aRange, RUTL_NAMES, aDetails ) )
rRanges.push_back( aRange );
else
bError = true;
diff --git a/sc/source/ui/miscdlgs/optsolver.cxx b/sc/source/ui/miscdlgs/optsolver.cxx
index 1b4cb066afa7..8f0378724828 100644
--- a/sc/source/ui/miscdlgs/optsolver.cxx
+++ b/sc/source/ui/miscdlgs/optsolver.cxx
@@ -762,7 +762,7 @@ bool ScOptSolverDlg::ParseRef( ScRange& rRange, const OUString& rInput, bool bAl
rRange.aEnd.SetTab( rRange.aStart.Tab() );
return ( bAllowRange || rRange.aStart == rRange.aEnd );
}
- else if ( ScRangeUtil::MakeRangeFromName( rInput, &mrDoc, mnCurTab, rRange, RUTL_NAMES, aDetails ) )
+ else if ( ScRangeUtil::MakeRangeFromName( rInput, mrDoc, mnCurTab, rRange, RUTL_NAMES, aDetails ) )
return ( bAllowRange || rRange.aStart == rRange.aEnd );
return false; // not recognized
diff --git a/sc/source/ui/unoobj/cellsuno.cxx b/sc/source/ui/unoobj/cellsuno.cxx
index 903a90726645..10a510920c86 100644
--- a/sc/source/ui/unoobj/cellsuno.cxx
+++ b/sc/source/ui/unoobj/cellsuno.cxx
@@ -4762,8 +4762,8 @@ uno::Reference<table::XCellRange> ScCellRangeObj::getCellRangeByName(
}
else
{
- if ( ScRangeUtil::MakeRangeFromName( aName, &rDoc, nTab, aCellRange ) ||
- ScRangeUtil::MakeRangeFromName( aName, &rDoc, nTab, aCellRange, RUTL_DBASE ) )
+ if ( ScRangeUtil::MakeRangeFromName( aName, rDoc, nTab, aCellRange ) ||
+ ScRangeUtil::MakeRangeFromName( aName, rDoc, nTab, aCellRange, RUTL_DBASE ) )
bFound = true;
}
diff --git a/sc/source/ui/unoobj/docuno.cxx b/sc/source/ui/unoobj/docuno.cxx
index b04dcf575add..2531c4776284 100644
--- a/sc/source/ui/unoobj/docuno.cxx
+++ b/sc/source/ui/unoobj/docuno.cxx
@@ -1406,8 +1406,8 @@ static bool lcl_ParseTarget( const OUString& rTarget, ScRange& rTargetRange, too
rTargetRange = aAddress;
bRangeValid = true; // cell reference
}
- else if ( ScRangeUtil::MakeRangeFromName( rTarget, &rDoc, nSourceTab, rTargetRange ) ||
- ScRangeUtil::MakeRangeFromName( rTarget, &rDoc, nSourceTab, rTargetRange, RUTL_DBASE ) )
+ else if ( ScRangeUtil::MakeRangeFromName( rTarget, rDoc, nSourceTab, rTargetRange ) ||
+ ScRangeUtil::MakeRangeFromName( rTarget, rDoc, nSourceTab, rTargetRange, RUTL_DBASE ) )
{
bRangeValid = true; // named range or database range
}
diff --git a/sc/source/ui/view/tabvwsh3.cxx b/sc/source/ui/view/tabvwsh3.cxx
index f12692547c6a..0beaa6af37f0 100644
--- a/sc/source/ui/view/tabvwsh3.cxx
+++ b/sc/source/ui/view/tabvwsh3.cxx
@@ -368,8 +368,8 @@ void ScTabViewShell::Execute( SfxRequest& rReq )
else
{
formula::FormulaGrammar::AddressConvention eConv = pDoc->GetAddressConvention();
- if( ScRangeUtil::MakeRangeFromName( aAddress, pDoc, nTab, aScRange, RUTL_NAMES, eConv ) ||
- ScRangeUtil::MakeRangeFromName( aAddress, pDoc, nTab, aScRange, RUTL_DBASE, eConv ) )
+ if( ScRangeUtil::MakeRangeFromName( aAddress, *pDoc, nTab, aScRange, RUTL_NAMES, eConv ) ||
+ ScRangeUtil::MakeRangeFromName( aAddress, *pDoc, nTab, aScRange, RUTL_DBASE, eConv ) )
{
nResult |= ScRefFlags::VALID;
if( aScRange.aStart.Tab() != nTab )