@@ -73,18 +73,18 @@ void JSON::_stringify(String &r_result, const Variant &p_var, const String &p_in
7373 r_result += itos (p_var);
7474 return ;
7575 case Variant::FLOAT: {
76- double num = p_var;
76+ const double num = p_var;
7777
7878 // Only for exactly 0. If we have approximately 0 let the user decide how much
7979 // precision they want.
80- if (num == double (0 )) {
80+ if (num == double (0.0 )) {
8181 r_result += " 0.0" ;
8282 return ;
8383 }
8484
85- double magnitude = std::log10 (Math::abs (num));
86- int total_digits = p_full_precision ? 17 : 14 ;
87- int precision = MAX (1 , total_digits - (int )Math::floor (magnitude));
85+ const double magnitude = std::log10 (Math::abs (num));
86+ const int total_digits = p_full_precision ? 17 : 14 ;
87+ const int precision = MAX (1 , total_digits - (int )Math::floor (magnitude));
8888
8989 r_result += String::num (num, precision);
9090 return ;
@@ -120,7 +120,7 @@ void JSON::_stringify(String &r_result, const Variant &p_var, const String &p_in
120120 r_result += end_statement;
121121 }
122122 _add_indent (r_result, p_indent, p_cur_indent + 1 );
123- _stringify (r_result, var, p_indent, p_cur_indent + 1 , p_sort_keys, p_markers);
123+ _stringify (r_result, var, p_indent, p_cur_indent + 1 , p_sort_keys, p_markers, p_full_precision );
124124 }
125125 r_result += end_statement;
126126 _add_indent (r_result, p_indent, p_cur_indent);
@@ -154,9 +154,9 @@ void JSON::_stringify(String &r_result, const Variant &p_var, const String &p_in
154154 r_result += end_statement;
155155 }
156156 _add_indent (r_result, p_indent, p_cur_indent + 1 );
157- _stringify (r_result, String (key), p_indent, p_cur_indent + 1 , p_sort_keys, p_markers);
157+ _stringify (r_result, String (key), p_indent, p_cur_indent + 1 , p_sort_keys, p_markers, p_full_precision );
158158 r_result += colon;
159- _stringify (r_result, d[key], p_indent, p_cur_indent + 1 , p_sort_keys, p_markers);
159+ _stringify (r_result, d[key], p_indent, p_cur_indent + 1 , p_sort_keys, p_markers, p_full_precision );
160160 }
161161
162162 r_result += end_statement;
0 commit comments