summaryrefslogtreecommitdiff
path: root/oox/source/drawingml/clrscheme.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'oox/source/drawingml/clrscheme.cxx')
-rw-r--r--oox/source/drawingml/clrscheme.cxx6
1 files changed, 5 insertions, 1 deletions
diff --git a/oox/source/drawingml/clrscheme.cxx b/oox/source/drawingml/clrscheme.cxx
index 7a99f3685a07..0c6517abfbc3 100644
--- a/oox/source/drawingml/clrscheme.cxx
+++ b/oox/source/drawingml/clrscheme.cxx
@@ -82,7 +82,11 @@ bool ClrScheme::getColor( sal_Int32 nSchemeClrToken, sal_Int32& rColor ) const
void ClrScheme::setColor( sal_Int32 nSchemeClrToken, sal_Int32 nColor )
{
- maClrScheme.emplace_back(nSchemeClrToken, nColor);
+ const auto aIter = std::find_if(maClrScheme.begin(), maClrScheme.end(), find_by_token(nSchemeClrToken) );
+ if ( aIter != maClrScheme.end() )
+ aIter->second = nColor;
+ else
+ maClrScheme.emplace_back(nSchemeClrToken, nColor);
}
bool ClrScheme::getColorByIndex(size_t nIndex, sal_Int32& rColor) const