Index: src/core/SkColorSpaceXform.cpp |
diff --git a/src/core/SkColorSpaceXform.cpp b/src/core/SkColorSpaceXform.cpp |
index b1dda348177f0599cdc796e11c55bbe1e9d8e4e6..f1c7511f4e64bdfaf41d82b8f71b8b517b509d6b 100644 |
--- a/src/core/SkColorSpaceXform.cpp |
+++ b/src/core/SkColorSpaceXform.cpp |
@@ -256,8 +256,8 @@ static const GammaFns<uint8_t> kFromLinear { |
// Build tables to transform src gamma to linear. |
template <typename T> |
static void build_gamma_tables(const T* outGammaTables[3], T* gammaTableStorage, int gammaTableSize, |
- const sk_sp<SkColorSpace>& space, const GammaFns<T>& fns, |
- bool gammasAreMatching) { |
+ SkColorSpace* space, const GammaFns<T>& fns, bool gammasAreMatching) |
+{ |
switch (as_CSB(space)->gammaNamed()) { |
case kSRGB_SkGammaNamed: |
outGammaTables[0] = outGammaTables[1] = outGammaTables[2] = fns.fSRGBTable; |
@@ -342,8 +342,8 @@ static inline bool is_almost_identity(const SkMatrix44& srcToDst) { |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
-std::unique_ptr<SkColorSpaceXform> SkColorSpaceXform::New(const sk_sp<SkColorSpace>& srcSpace, |
- const sk_sp<SkColorSpace>& dstSpace) { |
+std::unique_ptr<SkColorSpaceXform> SkColorSpaceXform::New(SkColorSpace* srcSpace, |
+ SkColorSpace* dstSpace) { |
if (!srcSpace || !dstSpace) { |
// Invalid input |
return nullptr; |
@@ -351,7 +351,7 @@ std::unique_ptr<SkColorSpaceXform> SkColorSpaceXform::New(const sk_sp<SkColorSpa |
ColorSpaceMatch csm = kNone_ColorSpaceMatch; |
SkMatrix44 srcToDst(SkMatrix44::kUninitialized_Constructor); |
- if (SkColorSpace::Equals(srcSpace.get(), dstSpace.get())) { |
+ if (SkColorSpace::Equals(srcSpace, dstSpace)) { |
srcToDst.setIdentity(); |
csm = kFull_ColorSpaceMatch; |
} else { |
@@ -1210,14 +1210,13 @@ static inline int num_tables(SkColorSpace* space) { |
template <SrcGamma kSrc, DstGamma kDst, ColorSpaceMatch kCSM> |
SkColorSpaceXform_Base<kSrc, kDst, kCSM> |
-::SkColorSpaceXform_Base(const sk_sp<SkColorSpace>& srcSpace, const SkMatrix44& srcToDst, |
- const sk_sp<SkColorSpace>& dstSpace) |
+::SkColorSpaceXform_Base(SkColorSpace* srcSpace, const SkMatrix44& srcToDst, SkColorSpace* dstSpace) |
: fColorLUT(sk_ref_sp((SkColorLookUpTable*) as_CSB(srcSpace)->colorLUT())) |
{ |
srcToDst.asColMajorf(fSrcToDst); |
- const int numSrcTables = num_tables(srcSpace.get()); |
- const int numDstTables = num_tables(dstSpace.get()); |
+ const int numSrcTables = num_tables(srcSpace); |
+ const int numDstTables = num_tables(dstSpace); |
const size_t srcTableBytes = numSrcTables * 256 * sizeof(float); |
const size_t dstTableBytes = numDstTables * kDstGammaTableSize * sizeof(uint8_t); |
fStorage.reset(srcTableBytes + dstTableBytes); |
@@ -1365,7 +1364,7 @@ const |
/////////////////////////////////////////////////////////////////////////////////////////////////// |
-std::unique_ptr<SkColorSpaceXform> SlowIdentityXform(const sk_sp<SkColorSpace>& space) { |
+std::unique_ptr<SkColorSpaceXform> SlowIdentityXform(SkColorSpace* space) { |
return std::unique_ptr<SkColorSpaceXform>(new SkColorSpaceXform_Base |
<kTable_SrcGamma, kTable_DstGamma, kNone_ColorSpaceMatch> |
(space, SkMatrix::I(), space)); |