diff options
author | skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com> | 2018-05-01 16:48:32 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-05-01 17:11:34 +0000 |
commit | 1ac818cb54401f22978b833cec0f75415855822e (patch) | |
tree | 674af9e49f748cd36c3a06e50a47df9d6a9b1270 /third_party | |
parent | ddff425b0a9cd4b178c74d7feee2c5c22e37c8d1 (diff) |
Roll skia/third_party/skcms fdc6366..f504cf9 (1 commits)
https://skia.googlesource.com/skcms.git/+log/fdc6366..f504cf9
2018-05-01 mtklein@chromium.org check full round-tripped index for inf/overflow
The AutoRoll server is located here: https://skcms-skia-roll.skia.org
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.
TBR=brianosman@google.com
Change-Id: I8d2d9cd074deb2f21b501d6008ca50798bda8e65
Reviewed-on: https://skia-review.googlesource.com/124832
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Diffstat (limited to 'third_party')
-rw-r--r-- | third_party/skcms/src/PolyTF.c | 8 | ||||
-rwxr-xr-x | third_party/skcms/version.sha1 | 2 |
2 files changed, 5 insertions, 5 deletions
diff --git a/third_party/skcms/src/PolyTF.c b/third_party/skcms/src/PolyTF.c index 89e0cc40ca..62da2d488f 100644 --- a/third_party/skcms/src/PolyTF.c +++ b/third_party/skcms/src/PolyTF.c @@ -147,15 +147,15 @@ static bool fit_poly_tf(const skcms_Curve* curve, skcms_PolyTF* tf) { for (int i = 0; i < N; i++) { float x = i * (1.0f/(N-1)); - float rt = skcms_TransferFunction_eval(&inv, eval_poly_tf(x, A,B,C,D)); - if (!isfinitef_(rt)) { + float rt = skcms_TransferFunction_eval(&inv, eval_poly_tf(x, A,B,C,D)) + * (N-1) + 0.5f; + if (!isfinitef_(rt) || rt > INT_MAX || rt < -INT_MAX) { return false; } const int tol = (i == 0 || i == N-1) ? 0 : N/256; - int ix = (int)((N-1) * rt + 0.5f); - if (abs(i - ix) > tol) { + if (abs(i - (int)rt) > tol) { return false; } } diff --git a/third_party/skcms/version.sha1 b/third_party/skcms/version.sha1 index a733977fef..b3ef71753a 100755 --- a/third_party/skcms/version.sha1 +++ b/third_party/skcms/version.sha1 @@ -1 +1 @@ -fdc6366ab85785991f884c6e0bf23bf1b9e68ec7
\ No newline at end of file +f504cf95c1d077cbdc61e2c145b8d00e70ad0185
\ No newline at end of file |