History

hsluv: avoid div by 0 error

Sigrid Haflínudóttir committed 6 years ago

Commit 52fd69b1 parent 8c213f31 file · +7 −2Browse files

Unified · Split

hsluv.c+7−2
@@ -228,9 +228,14 @@ l2y(double l) · 227 unmodified lines
228228 static void
229229 xyz2luv(Triplet* in_out)
230230 {
231− double var_u = (4.0 * in_out->a) / (in_out->a + (15.0 * in_out->b) + (3.0 * in_out->c));
232− double var_v = (9.0 * in_out->b) / (in_out->a + (15.0 * in_out->b) + (3.0 * in_out->c));
233231 double l = y2l(in_out->b);
232+ double var_u = 4.0 * in_out->a;
233+ double var_v = 9.0 * in_out->b;
234+ double div = (in_out->a + (15.0 * in_out->b) + (3.0 * in_out->c));
235+ if (div > 0.00000001) {
236+ var_u /= div;
237+ var_v /= div;
238+ }
234239 double u = 13.0 * l * (var_u - ref_u);
235240 double v = 13.0 * l * (var_v - ref_v);
236241

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t