Added initialization of arrays after srenew call.
authorDavid van der Spoel <spoel@anfinsen.bmc.uu.se>
Wed, 20 Jul 2011 09:21:30 +0000 (11:21 +0200)
committerDavid van der Spoel <spoel@anfinsen.bmc.uu.se>
Wed, 20 Jul 2011 09:21:30 +0000 (11:21 +0200)
src/tools/gmx_energy.c

index c846f988b4840793953643cd8f83dc15bf9b0162..3d0edaa5f71d639d5f0d808fed0ccdbfc4954228 100644 (file)
@@ -2074,12 +2074,20 @@ int gmx_energy(int argc,char *argv[])
                if (edat.nframes % 1000 == 0)
             {
                 srenew(edat.step,edat.nframes+1000);
+                memset(&(edat.step[edat.nframes]),0,1000*sizeof(edat.step[0]));
                 srenew(edat.steps,edat.nframes+1000);
+                memset(&(edat.steps[edat.nframes]),0,1000*sizeof(edat.steps[0]));
                 srenew(edat.points,edat.nframes+1000);
+                memset(&(edat.points[edat.nframes]),0,1000*sizeof(edat.points[0]));
                 for(i=0; i<nset; i++)
                 {
                     srenew(edat.s[i].ener,edat.nframes+1000);
+                    memset(&(edat.s[i].ener[edat.nframes]),0,
+                           1000*sizeof(edat.s[i].ener[0]));
+
                     srenew(edat.s[i].es  ,edat.nframes+1000);
+                    memset(&(edat.s[i].es[edat.nframes]),0,
+                           1000*sizeof(edat.s[i].es[0]));
                 }
             }