Source code

Revision control

Copy as Markdown

Other Tools

// vim: set ts=8 sts=4 et sw=4 tw=99:
function randomFloat () {
// note that in fuzz-testing, this can used as the size of a buffer to allocate.
// so it shouldn't return astronomic values. The maximum value 10000000 is already quite big.
var fac = 1.0;
var r = Math.random();
if (r < 0.25)
fac = 10;
else if (r < 0.7)
fac = 10000000;
else if (r < 0.8)
fac = NaN;
return -0.5*fac + Math.random() * fac;
}
for (var i = 0; i < 100000; i++)
randomFloat();