summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@googlemail.com>2011-08-25 12:28:13 +0200
committerMarkus Mohrhard <markus.mohrhard@googlemail.com>2011-08-25 12:29:28 +0200
commit32d1f978dda4910c7947de1e097fe12b8381403e (patch)
treeb09439098bff5d401d6744e5e6671800ca1baf70 /sc
parent7dbc196e1de895959fe3a2b9c4cdc89069f263e9 (diff)
add local range names for local range names
Diffstat (limited to 'sc')
-rw-r--r--sc/qa/unit/ucalc.cxx2
-rw-r--r--sc/source/core/data/cell.cxx7
2 files changed, 6 insertions, 3 deletions
diff --git a/sc/qa/unit/ucalc.cxx b/sc/qa/unit/ucalc.cxx
index 26e75fabf481..5c9b29230953 100644
--- a/sc/qa/unit/ucalc.cxx
+++ b/sc/qa/unit/ucalc.cxx
@@ -2235,7 +2235,7 @@ void Test::testCopyPaste()
//check values after copying
String aString;
m_pDoc->GetValue(1,1,1, aValue);
- CPPUNIT_ASSERT_MESSAGE("copied formula should return 3", aValue == 2);
+ CPPUNIT_ASSERT_MESSAGE("copied formula should return 2", aValue == 2);
m_pDoc->GetFormula(1,1,1, aString);
CPPUNIT_ASSERT_MESSAGE("formula string was not copied correctly", rtl::OUString(aString) == aFormulaString);
m_pDoc->GetValue(0,1,1, aValue);
diff --git a/sc/source/core/data/cell.cxx b/sc/source/core/data/cell.cxx
index d2700c09adb3..943842ffbfac 100644
--- a/sc/source/core/data/cell.cxx
+++ b/sc/source/core/data/cell.cxx
@@ -169,7 +169,6 @@ void adjustRangeName(ScToken* pToken, ScDocument& rNewDoc, const ScDocument* pOl
//search global range names
if (!pRangeData)
{
- //even if it is not in the global scope we'll have a global range name
bNewGlobal = true;
pRangeName = rNewDoc.GetRangeName();
if (pRangeName)
@@ -178,8 +177,12 @@ void adjustRangeName(ScToken* pToken, ScDocument& rNewDoc, const ScDocument* pOl
//if no range name was found copy it
if (!pRangeData)
{
+ bNewGlobal = bOldGlobal;
pRangeData = new ScRangeData(*pOldRangeData, &rNewDoc);
- rNewDoc.GetRangeName()->insert(pRangeData);
+ if (bNewGlobal)
+ rNewDoc.GetRangeName()->insert(pRangeData);
+ else
+ rNewDoc.GetRangeName(aNewTab)->insert(pRangeData);
}
sal_Int32 nIndex = pRangeData->GetIndex();
pToken->SetIndex(nIndex);