oox/source/ppt/timenodelistcontext.cxx | 17 +++++++++++------ sc/source/core/data/table2.cxx | 26 ++++++++++++++++---------- 2 files changed, 27 insertions(+), 16 deletions(-)
New commits: commit 1ae5f9052eb3d60d644533a0581cd3db39218455 Author: Andre Fischer <[email protected]> Date: Thu Jan 16 09:54:36 2014 +0000 123166: Made the update of maRowManualBreaks more conservative. diff --git a/sc/source/core/data/table2.cxx b/sc/source/core/data/table2.cxx index 114c384..544a265 100644 --- a/sc/source/core/data/table2.cxx +++ b/sc/source/core/data/table2.cxx @@ -155,18 +155,24 @@ void ScTable::InsertRow( SCCOL nStartCol, SCCOL nEndCol, SCROW nStartRow, SCSIZE if (!maRowManualBreaks.empty()) { - std::set<SCROW>::reverse_iterator rit = maRowManualBreaks.rbegin(); - while (rit != maRowManualBreaks.rend()) + std::vector<SCROW> aUpdatedBreaks; + + while ( ! maRowManualBreaks.empty()) { - SCROW nRow = *rit; - if (nRow < nStartRow) - break; // while - else - { - maRowManualBreaks.erase( (++rit).base()); - maRowManualBreaks.insert( static_cast<SCROW>( nRow + nSize)); - } + std::set<SCROW>::iterator aLast (--maRowManualBreaks.end()); + + // Check if there are more entries that have to be processed. + if (*aLast < nStartRow) + break; + + // Remember the updated break location and erase the entry. + aUpdatedBreaks.push_back(static_cast<SCROW>(*aLast + nSize)); + maRowManualBreaks.erase(aLast); } + + // Insert the updated break locations. + if ( ! aUpdatedBreaks.empty()) + maRowManualBreaks.insert(aUpdatedBreaks.begin(), aUpdatedBreaks.end()); } } commit 641aa4b583e27369b404584d094e0758a93ce5b5 Author: Steve Yin <[email protected]> Date: Thu Jan 16 08:29:37 2014 +0000 Bug 119578 - [From Symphony]Lighten special effect in .PPTX won't display diff --git a/oox/source/ppt/timenodelistcontext.cxx b/oox/source/ppt/timenodelistcontext.cxx index 0112889..e99d9fa 100644 --- a/oox/source/ppt/timenodelistcontext.cxx +++ b/oox/source/ppt/timenodelistcontext.cxx @@ -76,27 +76,32 @@ namespace oox { namespace ppt { { } - sal_Int32 get() + Any get() { sal_Int32 nColor; + Sequence< double > aHSL( 3 ); + Any aColor; switch( colorSpace ) { case AnimationColorSpace::HSL: - nColor = ( ( ( one * 128 ) / 360 ) & 0xff ) << 16 - | ( ( ( two * 128 ) / 1000 ) & 0xff ) << 8 - | ( ( ( three * 128 ) / 1000 ) & 0xff ); + aHSL[ 0 ] = double(one) / 100000; + aHSL[ 1 ] = double(two) / 100000; + aHSL[ 2 ] = double(three) / 100000; + aColor = Any(aHSL); break; case AnimationColorSpace::RGB: nColor = ( ( ( one * 128 ) / 1000 ) & 0xff ) << 16 | ( ( ( two * 128 ) / 1000 ) & 0xff ) << 8 | ( ( ( three * 128 ) / 1000 ) & 0xff ); + aColor = Any(nColor); break; default: nColor = 0; + aColor = Any( nColor ); break; } - return nColor; + return aColor; } sal_Int16 colorSpace; @@ -504,7 +509,7 @@ namespace oox { namespace ppt { if( maFromClr.isUsed() ) mpNode->setFrom( Any( maFromClr.getColor( rGraphicHelper ) ) ); if( mbHasByColor ) - mpNode->setBy( Any ( m_byColor.get() ) ); + mpNode->setBy( m_byColor.get() ); } } _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
