Index: src/core/SkColorSpace.cpp |
diff --git a/src/core/SkColorSpace.cpp b/src/core/SkColorSpace.cpp |
index bf99b474a21f4c5e9da72056f07413f48bcfe26f..3a81d276a8f36f63654abaae9b83b585b56aa39d 100644 |
--- a/src/core/SkColorSpace.cpp |
+++ b/src/core/SkColorSpace.cpp |
@@ -484,9 +484,17 @@ bool load_gammas(SkGammaCurve* gammas, uint32_t numGammas, const uint8_t* src, s |
break; |
} |
case kTAG_ParaCurveType: { |
+ enum ParaCurveType { |
+ kExponential_ParaCurveType = 0, |
+ kGAB_ParaCurveType = 1, |
+ kGABC_ParaCurveType = 2, |
+ kGABDE_ParaCurveType = 3, |
+ kGABCDEF_ParaCurveType = 4, |
+ }; |
+ |
// Determine the format of the parametric curve tag. |
uint16_t format = read_big_endian_short(src + 8); |
- if (0 == format) { |
+ if (kExponential_ParaCurveType == format) { |
tagBytes = 12 + 4; |
if (len < tagBytes) { |
SkColorSpacePrintf("gamma tag is too small (%d bytes)", len); |
@@ -506,7 +514,7 @@ bool load_gammas(SkGammaCurve* gammas, uint32_t numGammas, const uint8_t* src, s |
// We will fill in with zeros as necessary to always match the above form. |
float g = 0.0f, a = 0.0f, b = 0.0f, c = 0.0f, d = 0.0f, e = 0.0f, f = 0.0f; |
switch(format) { |
- case 1: { |
+ case kGAB_ParaCurveType: { |
tagBytes = 12 + 12; |
if (len < tagBytes) { |
SkColorSpacePrintf("gamma tag is too small (%d bytes)", len); |
@@ -521,7 +529,7 @@ bool load_gammas(SkGammaCurve* gammas, uint32_t numGammas, const uint8_t* src, s |
d = -b / a; |
break; |
} |
- case 2: |
+ case kGABC_ParaCurveType: |
tagBytes = 12 + 16; |
if (len < tagBytes) { |
SkColorSpacePrintf("gamma tag is too small (%d bytes)", len); |
@@ -537,7 +545,7 @@ bool load_gammas(SkGammaCurve* gammas, uint32_t numGammas, const uint8_t* src, s |
d = -b / a; |
f = c; |
break; |
- case 3: |
+ case kGABDE_ParaCurveType: |
tagBytes = 12 + 20; |
if (len < tagBytes) { |
SkColorSpacePrintf("gamma tag is too small (%d bytes)", len); |
@@ -552,7 +560,7 @@ bool load_gammas(SkGammaCurve* gammas, uint32_t numGammas, const uint8_t* src, s |
d = SkFixedToFloat(read_big_endian_int(src + 28)); |
e = SkFixedToFloat(read_big_endian_int(src + 24)); |
break; |
- case 4: |
+ case kGABCDEF_ParaCurveType: |
tagBytes = 12 + 28; |
if (len < tagBytes) { |
SkColorSpacePrintf("gamma tag is too small (%d bytes)", len); |