From: oetiker Date: Wed, 28 Oct 2009 05:14:03 +0000 (+0000) Subject: Avoid unnecessary string handling for UPDATE commands in rrd_deaemon for 20x X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=commitdiff_plain;h=14e4172649ba3fd67f5d82addf3813928ee3ba23 Avoid unnecessary string handling for UPDATE commands in rrd_deaemon for 20x speed increasse. Only copy as many bytes as necessary. During journal replay, avoid unnecessary copy (string is discarded). Bug reported by Thorsten von Eicken Patched by kevin brintnall git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1961 a5681a0c-68f1-0310-ab6d-d61299d08faa --- diff --git a/src/rrd_daemon.c b/src/rrd_daemon.c index 0ca1818..1946003 100644 --- a/src/rrd_daemon.c +++ b/src/rrd_daemon.c @@ -1312,7 +1312,8 @@ static int handle_request_update (HANDLER_PROTO) /* {{{ */ cache_item_t *ci; /* save it for the journal later */ - strncpy(orig_buf, buffer, sizeof(orig_buf)-1); + if (sock != NULL) + strncpy(orig_buf, buffer, buffer_size); status = buffer_get_field (&buffer, &buffer_size, &file); if (status != 0)