mirror of
https://github.com/zeek/zeek.git
synced 2025-10-11 19:18:19 +00:00
Fix to_json() to not lose precision for values of type double
Also changed a few values in the tests for better numerical diversity.
This commit is contained in:
parent
65d6e5a4f7
commit
6812a7febe
3 changed files with 11 additions and 10 deletions
|
@ -39,10 +39,11 @@ function to_json(v: any, only_loggable: bool &default=F, field_escape_pattern: p
|
||||||
case "count":
|
case "count":
|
||||||
fallthrough;
|
fallthrough;
|
||||||
case "time":
|
case "time":
|
||||||
fallthrough;
|
|
||||||
case "double":
|
|
||||||
return cat(v);
|
return cat(v);
|
||||||
|
|
||||||
|
case "double":
|
||||||
|
return fmt("%.16g", v);
|
||||||
|
|
||||||
case "bool":
|
case "bool":
|
||||||
local bval: bool = v;
|
local bval: bool = v;
|
||||||
return bval ? "true" : "false";
|
return bval ? "true" : "false";
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
true
|
true
|
||||||
123
|
123
|
||||||
-999
|
-999
|
||||||
1.123457
|
3.14
|
||||||
-1.123456e+308
|
-1.23456789e+308
|
||||||
0
|
9e-308
|
||||||
1.0
|
1480788576.868945
|
||||||
"-12.0 hrs"
|
"-12.0 hrs"
|
||||||
"hello"
|
"hello"
|
||||||
""
|
""
|
||||||
|
|
|
@ -30,14 +30,14 @@ event bro_init()
|
||||||
local i: int = -999;
|
local i: int = -999;
|
||||||
print to_json(i);
|
print to_json(i);
|
||||||
|
|
||||||
local d1: double = 1.123456789;
|
local d1: double = 3.14;
|
||||||
local d2: double = -1.123456e308;
|
local d2: double = -1.23456789e308;
|
||||||
local d3: double = 9.876543e-308;
|
local d3: double = 9e-308;
|
||||||
print to_json(d1);
|
print to_json(d1);
|
||||||
print to_json(d2);
|
print to_json(d2);
|
||||||
print to_json(d3);
|
print to_json(d3);
|
||||||
|
|
||||||
local t: time = double_to_time(1.0);
|
local t: time = double_to_time(1480788576.868945);
|
||||||
print to_json(t);
|
print to_json(t);
|
||||||
|
|
||||||
local ti: interval = -12hr;
|
local ti: interval = -12hr;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue