Kaydet (Commit) 6aeed3c9 authored tarafından Kohei Yoshida's avatar Kohei Yoshida

Re-added ClearSource() which will only clear the source. Nothing else.

üst 49cb939d
......@@ -114,8 +114,11 @@ private:
SC_DLLPRIVATE ScDPTableData* GetTableData();
SC_DLLPRIVATE void CreateObjects();
SC_DLLPRIVATE void CreateOutput();
bool FillLabelDataForDimension(const com::sun::star::uno::Reference<com::sun::star::container::XIndexAccess>& xDims, sal_Int32 nDim, ScDPLabelData& rLabelData);
SC_DLLPRIVATE void ClearSource();
SC_DLLPRIVATE bool FillLabelDataForDimension(
const com::sun::star::uno::Reference<
com::sun::star::container::XIndexAccess>& xDims,
sal_Int32 nDim, ScDPLabelData& rLabelData);
public:
ScDPObject(ScDocument* pD);
......
......@@ -543,9 +543,18 @@ void ScDPObject::InvalidateData()
}
void ScDPObject::ClearTableData()
{
ClearSource();
if (mpTableData)
mpTableData->GetCacheTable().getCache()->RemoveReference(this);
mpTableData.reset();
}
void ScDPObject::ClearSource()
{
Reference< XComponent > xObjectComp( xSource, UNO_QUERY );
if ( xObjectComp.is() )
if (xObjectComp.is())
{
try
{
......@@ -557,9 +566,6 @@ void ScDPObject::ClearTableData()
}
}
xSource = NULL;
if (mpTableData)
mpTableData->GetCacheTable().getCache()->RemoveReference(this);
mpTableData.reset();
}
ScRange ScDPObject::GetNewOutputRange( bool& rOverflow )
......
......@@ -1150,7 +1150,7 @@ void ScDBFunc::GroupDataPilot()
ScDPDimensionSaveData* pDimData = aData.GetDimensionData(); // created if not there
// find original base
String aBaseDimName( aDimName );
rtl::OUString aBaseDimName = aDimName;
const ScDPSaveGroupDimension* pBaseGroupDim = pDimData->GetNamedGroupDim( aDimName );
if ( pBaseGroupDim )
{
......
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