summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
Diffstat (limited to 'sc')
-rw-r--r--sc/source/core/tool/token.cxx13
-rw-r--r--sc/source/ui/unoobj/tokenuno.cxx3
2 files changed, 6 insertions, 10 deletions
diff --git a/sc/source/core/tool/token.cxx b/sc/source/core/tool/token.cxx
index fd16ada1fa99..11005eabe596 100644
--- a/sc/source/core/tool/token.cxx
+++ b/sc/source/core/tool/token.cxx
@@ -1219,14 +1219,11 @@ bool ScTokenArray::AddFormulaToken(
rToken.Data >>= aTokenData;
if ( eOpCode == ocName )
{
- /* TODO: new token type with sheet number */
- if (aTokenData.Global)
- AddRangeName(aTokenData.Index, -1);
- else
- bError = true;
- /* FIXME: resolve the non-global case to the
- * current position's sheet as it implicitly was
- * before, currently this is broken. */
+ SAL_WARN_IF( aTokenData.Sheet < -1 || std::numeric_limits<sal_Int16>::max() < aTokenData.Sheet,
+ "sc.core",
+ "ScTokenArray::AddFormulaToken - NameToken.Sheet out of limits: " << aTokenData.Sheet);
+ sal_Int16 nSheet = static_cast<sal_Int16>(aTokenData.Sheet);
+ AddRangeName(aTokenData.Index, nSheet);
}
else if (eOpCode == ocDBArea)
AddDBRange(aTokenData.Index);
diff --git a/sc/source/ui/unoobj/tokenuno.cxx b/sc/source/ui/unoobj/tokenuno.cxx
index b1800ced542e..b8b80de5007d 100644
--- a/sc/source/ui/unoobj/tokenuno.cxx
+++ b/sc/source/ui/unoobj/tokenuno.cxx
@@ -422,8 +422,7 @@ bool ScTokenConversion::ConvertToTokenSequence( const ScDocument& rDoc,
{
sheet::NameToken aNameToken;
aNameToken.Index = static_cast<sal_Int32>( rToken.GetIndex() );
- /* FIXME: we need a new token with sheet number */
- aNameToken.Global = (rToken.GetSheet() < 0);
+ aNameToken.Sheet = rToken.GetSheet();
rAPI.Data <<= aNameToken;
}
break;