summaryrefslogtreecommitdiff
path: root/src/yajl_gen.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/yajl_gen.c')
-rw-r--r--src/yajl_gen.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/yajl_gen.c b/src/yajl_gen.c
index 8605982..f36da2a 100644
--- a/src/yajl_gen.c
+++ b/src/yajl_gen.c
@@ -57,6 +57,7 @@ yajl_gen_config(yajl_gen g, yajl_gen_option opt, ...)
switch(opt) {
case yajl_gen_beautify:
case yajl_gen_validate_utf8:
+ case yajl_gen_escape_solidus:
if (va_arg(ap, int)) g->flags |= opt;
else g->flags &= ~opt;
break;
@@ -222,6 +223,9 @@ yajl_gen_double(yajl_gen g, double number)
if (isnan(number) || isinf(number)) return yajl_gen_invalid_number;
INSERT_SEP; INSERT_WHITESPACE;
sprintf(i, "%.20g", number);
+ if (strspn(i, "0123456789-") == strlen(i)) {
+ strcat(i, ".0");
+ }
g->print(g->ctx, i, (unsigned int)strlen(i));
APPENDED_ATOM;
FINAL_NEWLINE;