summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
authorNoel Power <noel.power@suse.com>2013-03-12 13:49:19 +0000
committerNoel Power <noel.power@suse.com>2013-03-12 13:49:48 +0000
commitdfa7652da571066e7c69042d4893a5f483f56b0e (patch)
treea0275dfc8480cc810bb2d1bcf2c61d9a73eb1e28 /sc
parent28b0168b4235040e5ef6dae9ffa400aaf9292e34 (diff)
fix for fdo#62111 - don't count non-default empty rows as rows to repeat
Change-Id: I075310ef63ab4eb666da2092d4be1c6f8d989b75
Diffstat (limited to 'sc')
-rw-r--r--sc/source/filter/excel/xetable.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/sc/source/filter/excel/xetable.cxx b/sc/source/filter/excel/xetable.cxx
index c44b32c1dcfa..4f5d2e4069e4 100644
--- a/sc/source/filter/excel/xetable.cxx
+++ b/sc/source/filter/excel/xetable.cxx
@@ -2052,12 +2052,15 @@ void XclExpRowBuffer::Finalize( XclExpDefaultRowData& rDefRowData, const ScfUInt
}
if ( pPrev )
{
- sal_uInt32 nRpt = rRow->GetXclRow() - pPrev->GetXclRow();
- pPrev->SetXclRowRpt( nRpt );
- if ( nRpt > 1 )
- aRepeated.push_back( pPrev );
if ( pPrev->IsDefaultable())
{
+ // if the previous row we processed is not
+ // defaultable then afaict the rows inbetween are
+ // not used ( and not repeatable )
+ sal_uInt32 nRpt = rRow->GetXclRow() - pPrev->GetXclRow();
+ if ( nRpt > 1 )
+ aRepeated.push_back( pPrev );
+ pPrev->SetXclRowRpt( nRpt );
XclExpDefaultRowData aDefData( *pPrev );
size_t& rnDefCount = aDefRowMap[ aDefData ];
rnDefCount += ( pPrev->GetXclRowRpt() - 1 );