summaryrefslogtreecommitdiffstats
path: root/admin
diff options
context:
space:
mode:
authorramon <ramongomez@us.es>2010-06-16 09:13:16 +0000
committerramon <ramongomez@us.es>2010-06-16 09:13:16 +0000
commit830817c931e43d7ca102e2ecba847620c56a9c7e (patch)
tree5b8519e3fd8e029df9acf1fb9125323088943ae1 /admin
parentab3a5dc4d02b28611e52fcd4268cc71a80eec5d9 (diff)
Leer fichero con fin de cadena en {{{ogAdmServer}}}
git-svn-id: https://opengnsys.es/svn/trunk@1039 a21b9725-9963-47de-94b9-378ad31fedc9
Diffstat (limited to 'admin')
-rw-r--r--admin/Services/ogAdmServer/sources/ogAdmServer.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/admin/Services/ogAdmServer/sources/ogAdmServer.cpp b/admin/Services/ogAdmServer/sources/ogAdmServer.cpp
index 68c8e45c..653712eb 100644
--- a/admin/Services/ogAdmServer/sources/ogAdmServer.cpp
+++ b/admin/Services/ogAdmServer/sources/ogAdmServer.cpp
@@ -46,11 +46,12 @@ int TomaConfiguracion(char* pathfilecfg) {
fseek(Fconfig, 0, SEEK_END); // Obtiene tamaño del fichero.
lSize = ftell(Fconfig);
rewind(Fconfig);
- buffer = (char*) malloc(lSize); // Toma memoria para el buffer de lectura.
+ buffer = (char*) malloc(lSize + 1); // Toma memoria para el buffer de lectura.
if (buffer == NULL)
return (FALSE);
fread(buffer, 1, lSize, Fconfig); // Lee contenido del fichero
fclose(Fconfig);
+ buffer[lSize] = '\0'; // Forzar carácter de fin de cadena.
//inicializar
IPlocal[0] = (char) NULL;
@@ -1105,11 +1106,12 @@ int actualiza_hardware(Database db, Table tbl, char* hrd, char* ip, char*ido) {
if (lSize == 0)
return (false);
rewind(Finv);
- buffer = (char*) malloc(lSize); // Toma memoria para el buffer de lectura.
+ buffer = (char*) malloc(lSize + 1); // Toma memoria para el buffer de lectura.
if (buffer == NULL)
return (false);
fread(buffer, 1, lSize, Finv); // Lee contenido del fichero
fclose(Finv);
+ buffer[lSize] = '\0'; // Forzar carácter de fin de cadena.
buffer = escaparComillas(buffer);
// Trocea la cadena de configuración
@@ -1372,11 +1374,12 @@ int actualiza_software(Database db, Table tbl, char* sft, char* par, char* tfs,
fseek(Finv, 0, SEEK_END); // Obtiene tamaño del fichero.
lSize = ftell(Finv);
rewind(Finv);
- buffer = (char*) malloc(lSize); // Toma memoria para el buffer de lectura.
+ buffer = (char*) malloc(lSize + 1); // Toma memoria para el buffer de lectura.
if (buffer == NULL)
return (false);
fread(buffer, 1, lSize, Finv); // Lee contenido del fichero
fclose(Finv);
+ buffer[lSize] = '\0'; // Forzar carácter de fin de cadena.
buffer = escaparComillas(buffer);
// trocea las líneas
lon = split_parametros(tbSoftware, buffer, ch);