Add nulls during reading of settings and info files
Change-Id: Ie6202a8cc709d8593768f447ef95b4a815605d6b
diff --git a/data.cpp b/data.cpp
index 7d92383..9f2e6b5 100644
--- a/data.cpp
+++ b/data.cpp
@@ -274,16 +274,18 @@
string Name;
string Value;
unsigned short length;
- char array[512];
+ char array[513];
if (fread(&length, 1, sizeof(unsigned short), in) != sizeof(unsigned short)) goto error;
if (length >= 512) goto error;
if (fread(array, 1, length, in) != length) goto error;
+ array[length+1] = '\0';
Name = array;
if (fread(&length, 1, sizeof(unsigned short), in) != sizeof(unsigned short)) goto error;
if (length >= 512) goto error;
if (fread(array, 1, length, in) != length) goto error;
+ array[length+1] = '\0';
Value = array;
map<string, TStrIntPair>::iterator pos;
diff --git a/infomanager.cpp b/infomanager.cpp
index 864c431..2a4c3c8 100644
--- a/infomanager.cpp
+++ b/infomanager.cpp
@@ -67,16 +67,18 @@
string Name;
string Value;
unsigned short length;
- char array[512];
+ char array[513];
if (fread(&length, 1, sizeof(unsigned short), in) != sizeof(unsigned short)) goto error;
if (length >= 512) goto error;
if (fread(array, 1, length, in) != length) goto error;
+ array[length+1] = '\0';
Name = array;
if (fread(&length, 1, sizeof(unsigned short), in) != sizeof(unsigned short)) goto error;
if (length >= 512) goto error;
if (fread(array, 1, length, in) != length) goto error;
+ array[length+1] = '\0';
Value = array;
map<string, string>::iterator pos;