diff options
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 |