diff options
Diffstat (limited to 'include/core/SkFixed.h')
-rw-r--r-- | include/core/SkFixed.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/core/SkFixed.h b/include/core/SkFixed.h index 3140b7a35d..f6dd3d6002 100644 --- a/include/core/SkFixed.h +++ b/include/core/SkFixed.h @@ -86,9 +86,9 @@ typedef int32_t SkFixed; #if defined(SK_SUPPORT_LEGACY_DIVBITS_UB) #define SkFixedDiv(numer, denom) SkDivBits(numer, denom, 16) #else - // TODO(reed): this clamp shouldn't be needed. Use SkToS32(). + // The divide may exceed 32 bits. Clamp to a signed 32 bit result. #define SkFixedDiv(numer, denom) \ - SkTPin<int32_t>((int32_t)(SkLeftShift((int64_t)numer, 16) / denom), SK_MinS32, SK_MaxS32) + SkToS32(SkTPin<int64_t>((SkLeftShift((int64_t)numer, 16) / denom), SK_MinS32, SK_MaxS32)) #endif ////////////////////////////////////////////////////////////////////////////////////////////////////// |