From b637934677634886383916c417e1be148ee0c7ad Mon Sep 17 00:00:00 2001 From: Miroslav Lichvar Date: Mon, 20 Nov 2017 12:02:44 +0100 Subject: [PATCH] rrd plugin: Fix writing of long values. The buffer provided for value_list_to_string() was not long enough to fit a timestamp and a negative value using exponent and maximum precision of the gauge format. Signed-off-by: Florian Forster --- src/rrdtool.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/rrdtool.c b/src/rrdtool.c index 5f42561a..558b8005 100644 --- a/src/rrdtool.c +++ b/src/rrdtool.c @@ -803,7 +803,7 @@ static int rrd_write(const data_set_t *ds, const value_list_t *vl, if (value_list_to_filename(filename, sizeof(filename), vl) != 0) return -1; - char values[32 * ds->ds_num]; + char values[32 * (ds->ds_num + 1)]; if (value_list_to_string(values, sizeof(values), ds, vl) != 0) return -1; -- 2.11.0