From: oetiker Date: Fri, 1 Jun 2007 17:35:46 +0000 (+0000) Subject: Bernhard X-Git-Url: https://git.octo.it/?p=rrdtool.git;a=commitdiff_plain;h=b9c1a336b13d8093b9841848cbed687a6e01a5c3 Bernhard - fill the file with DNAN and add the remaining data in after the fact ... git-svn-id: svn://svn.oetiker.ch/rrdtool/trunk/program@1098 a5681a0c-68f1-0310-ab6d-d61299d08faa --- diff --git a/src/rrd_open.c b/src/rrd_open.c index 7812da1..e839184 100644 --- a/src/rrd_open.c +++ b/src/rrd_open.c @@ -253,6 +253,7 @@ rrd_file_t *rrd_open( } rrd_file->file_start = data; if (rdwr & RRD_CREAT) { + memset(data, DNAN, newfile_size - 1); goto out_done; } #endif diff --git a/src/rrd_resize.c b/src/rrd_resize.c index 55ced9e..b242b48 100644 --- a/src/rrd_resize.c +++ b/src/rrd_resize.c @@ -169,12 +169,17 @@ int rrd_resize( rrd_write(rrd_out_file, &buffer, sizeof(rrd_value_t) * 1); l--; } +#ifndef HAVE_MMAP buffer = DNAN; l = rrdnew.stat_head->ds_cnt * modify; while (l > 0) { rrd_write(rrd_out_file, &buffer, sizeof(rrd_value_t) * 1); l--; } +#else + /* for the mmap case, we did already fill the whole new file with DNAN + * before we copied the old values, so nothing to do here. */ +#endif } else { /* Removing rows. Normally this would be just after the cursor ** however this may also mean that we wrap to the beginning of