summaryrefslogtreecommitdiff
path: root/drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx')
-rw-r--r--drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx14
1 files changed, 12 insertions, 2 deletions
diff --git a/drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx b/drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx
index daff0632d322..a01007b02ad1 100644
--- a/drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx
+++ b/drawinglayer/source/primitive3d/modifiedcolorprimitive3d.cxx
@@ -32,7 +32,7 @@ namespace drawinglayer
{
ModifiedColorPrimitive3D::ModifiedColorPrimitive3D(
const Primitive3DSequence& rChildren,
- const basegfx::BColorModifier& rColorModifier)
+ const basegfx::BColorModifierSharedPtr& rColorModifier)
: GroupPrimitive3D(rChildren),
maColorModifier(rColorModifier)
{
@@ -44,7 +44,17 @@ namespace drawinglayer
{
const ModifiedColorPrimitive3D& rCompare = (ModifiedColorPrimitive3D&)rPrimitive;
- return (maColorModifier == rCompare.maColorModifier);
+ if(getColorModifier().get() == rCompare.getColorModifier().get())
+ {
+ return true;
+ }
+
+ if(!getColorModifier().get() || !rCompare.getColorModifier().get())
+ {
+ return false;
+ }
+
+ return *getColorModifier().get() == *rCompare.getColorModifier().get();
}
return false;