aboutsummaryrefslogtreecommitdiffhomepage
path: root/third_party
diff options
context:
space:
mode:
Diffstat (limited to 'third_party')
-rw-r--r--third_party/skcms/src/PolyTF.c8
-rwxr-xr-xthird_party/skcms/version.sha12
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