# HG changeset patch # User jbe # Date 1363533328 -3600 # Node ID 794974af6d6d89076aeeebfcecd31ad01ddbe1ed # Parent cad83f274b79dcdd88972697fb980e37bc617b01 Bugfix in "lf_update_suggestion_order" related to floating point error workaround diff -r cad83f274b79 -r 794974af6d6d lf_update_suggestion_order.c --- a/lf_update_suggestion_order.c Sun Mar 17 16:06:16 2013 +0100 +++ b/lf_update_suggestion_order.c Sun Mar 17 16:15:28 2013 +0100 @@ -33,7 +33,6 @@ struct candidate { char *key; double score_per_step; - int reaches_score; double score; int seat; }; @@ -95,7 +94,6 @@ if (remaining <= 1) break; for (i=0; i 0.0) { - if (candidates[i].reaches_score) { + double max_scale; + max_scale = (1.0-candidates[i].score) / candidates[i].score_per_step; + if (max_scale == scale) { candidates[i].score = 1.0; remaining--; } else {