diff --git a/src/rrdcached.c b/src/rrdcached.c
index e5e11d4317b045fbb8587a3de3cc3f332653e858..e77be2dd29eddd6af3b2674e35a2ffec967a3cb5 100644 (file)
--- a/src/rrdcached.c
+++ b/src/rrdcached.c
int status;
size_t len;
+ if (datadir != NULL)
+ {
+ size_t datadir_len = strlen (datadir) + 1;
+
+ if (datadir_len >= buffer_size)
+ return (ENOMEM);
+
+ sstrncpy (buffer, datadir, buffer_size);
+ buffer[datadir_len - 1] = '/';
+ buffer[datadir_len] = 0;
+
+ buffer += datadir_len;
+ buffer_size -= datadir_len;
+ }
+
status = FORMAT_VL (buffer, buffer_size, vl);
if (status != 0)
return (status);