Avoid division by zero in circuitstats pareto

In circuit_build_times_calculate_timeout() in circuitstats.c, avoid dividing
by zero in the pareto calculations.

If either the alpha or p parameters are 0, we would divide by zero, yielding
an infinite result; which would be clamped to INT32_MAX anyway. So rather
than dividing by zero, we just skip the offending calculation(s), and
use INT32_MAX for the result.

Division by zero traps under clang -fsanitize=undefined-trap -fsanitize-undefined-trap-on-error.
This commit is contained in:
teor
2014-09-29 20:24:40 +10:00
parent ffd92e8ef8
commit 4d0ad34a92
2 changed files with 20 additions and 1 deletions
@@ -0,0 +1,5 @@
o Minor bugfixes:
- In circuit_build_times_calculate_timeout() in circuitstats.c, avoid
dividing by zero in the pareto calculations. This traps under
clang -fsanitize=undefined-trap -fsanitize-undefined-trap-on-error.
Fixes bug 13290.