diff options
author | ramon <ramongomez@us.es> | 2010-06-16 09:13:16 +0000 |
---|---|---|
committer | ramon <ramongomez@us.es> | 2010-06-16 09:13:16 +0000 |
commit | 830817c931e43d7ca102e2ecba847620c56a9c7e (patch) | |
tree | 5b8519e3fd8e029df9acf1fb9125323088943ae1 /admin | |
parent | ab3a5dc4d02b28611e52fcd4268cc71a80eec5d9 (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.cpp | 9 |
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); |