Index: /branches/eam_branches/ipp-20150419/Ohana/src/libohana/src/config.c
===================================================================
--- /branches/eam_branches/ipp-20150419/Ohana/src/libohana/src/config.c	(revision 38319)
+++ /branches/eam_branches/ipp-20150419/Ohana/src/libohana/src/config.c	(revision 38320)
@@ -395,6 +395,6 @@
   Nbytes = 0;
   NBYTES = D_NBYTES;
-  ALLOCATE (ibuffer, char, NBYTES + 2);
-    
+  ALLOCATE_ZERO (ibuffer, char, NBYTES + 2);
+
   /* load data from file */
   while ((nbytes = fread (&ibuffer[Nbytes], sizeof(char), D_NBYTES, f)) == D_NBYTES) {
@@ -402,4 +402,5 @@
     NBYTES += D_NBYTES;
     REALLOCATE (ibuffer, char, NBYTES + 2);
+    memset (&ibuffer[NBYTES - D_NBYTES], 0, NBYTES - D_NBYTES + 2);
   }
   Nbytes += nbytes;
@@ -419,6 +420,8 @@
       Ncpy = strlen (line);
       if (Nbytes + Ncpy >= NBYTES) {
+	int Nbytes_old = NBYTES;
 	NBYTES = Nbytes + Ncpy + D_NBYTES;
 	REALLOCATE (ibuffer, char, NBYTES + 2);
+	memset (&ibuffer[Nbytes_old], 0, NBYTES + 2 - Nbytes_old);
       }    
       memcpy (&ibuffer[Nbytes], line, Ncpy);
@@ -430,6 +433,8 @@
       Ncpy = strlen (line);
       if (Nbytes + Ncpy >= NBYTES) {
+	int Nbytes_old = NBYTES;
 	NBYTES = Nbytes + Ncpy + D_NBYTES;
 	REALLOCATE (ibuffer, char, NBYTES + 2);
+	memset (&ibuffer[Nbytes_old], 0, NBYTES + 2 - Nbytes_old);
       }    
       memcpy (&ibuffer[Nbytes], line, Ncpy);
