From a1e2a1057735bac829c5d65de35105467de1b230 Mon Sep 17 00:00:00 2001 From: Ben Long Date: Thu, 22 Oct 2015 17:20:43 +0800 Subject: [PATCH 1/2] Update json.hpp.re2c --- src/json.hpp.re2c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/json.hpp.re2c b/src/json.hpp.re2c index c38e452edf..0bda8428ee 100644 --- a/src/json.hpp.re2c +++ b/src/json.hpp.re2c @@ -4678,7 +4678,7 @@ class basic_json if (c >= 0x00 and c <= 0x1f) { // print character c as \uxxxx - sprintf(&result[pos + 1], "u%04x", int(c)); + snprintf(&result[pos + 1], result.size(), "u%04x", int(c)); pos += 6; // overwrite trailing null character result[pos] = '\\'; From c8021ce397f23d0a5599f168ad615fdb1d419f5a Mon Sep 17 00:00:00 2001 From: Ben Long Date: Thu, 22 Oct 2015 17:24:55 +0800 Subject: [PATCH 2/2] change sprintf to c++11 snprintf --- src/json.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/json.hpp b/src/json.hpp index 56d6f3f09f..079868ad2e 100644 --- a/src/json.hpp +++ b/src/json.hpp @@ -4678,7 +4678,7 @@ class basic_json if (c >= 0x00 and c <= 0x1f) { // print character c as \uxxxx - sprintf(&result[pos + 1], "u%04x", int(c)); + snprintf(&result[pos + 1], result.size(), "u%04x", int(c)); pos += 6; // overwrite trailing null character result[pos] = '\\';