diff --git a/libs/pigment/KoColor.cpp b/libs/pigment/KoColor.cpp index 868a93d7156ca94c80ca06ef8ca38723bed8fd83..3e88f39fa6708618d8f426c5b76aaacb70d78d09 100644 --- a/libs/pigment/KoColor.cpp +++ b/libs/pigment/KoColor.cpp @@ -123,9 +123,9 @@ KoColor & KoColor::operator=(const KoColor & rhs) delete [] d->data; d->data = 0; d->colorSpace = rhs.colorSpace(); - Q_ASSERT(*d->colorSpace == *KoColorSpaceRegistry::instance()->permanentColorspace(d->colorSpace)); if (rhs.d->colorSpace && rhs.d->data) { + Q_ASSERT(d->colorSpace == KoColorSpaceRegistry::instance()->permanentColorspace(d->colorSpace)); // here we want to do a check on pointer, since d->colorSpace is supposed to already be a permanent one d->data = new quint8[d->colorSpace->pixelSize()]; memcpy(d->data, rhs.d->data, d->colorSpace->pixelSize()); } @@ -154,7 +154,7 @@ void KoColor::convertTo(const KoColorSpace * cs) delete [] d->data; d->data = data; - d->colorSpace = cs; + d->colorSpace = KoColorSpaceRegistry::instance()->permanentColorspace(cs); }